jjzjj

安卓和 Maven : Speed up project compilation and deploy

coder 2023-11-22 原文

有没有办法加快使用maven编译部署到设备上的android项目?

我在 IntelliJ Idea 中测试了一个空白的 android 项目(使用“android create project”从命令行创建)的构建时间——从按下“运行”按钮到在设备上启动应用程序我花了 4 秒。 然后我向它添加了 Maven 支持 - 现在它需要将近 7 秒。

对于更大的项目,它需要更多的时间。 例如添加了ActionBarSherlock依赖的空白工程,编译、部署、运行大约需要25-30秒。

有没有办法加快这个过程?

我想听听 Square 开发人员(尤其是 Jake Wharton)的回答:) 你的 android 项目编译需要多长时间?

最佳答案

我做的几件事让我有了一点进步:

  • 关闭调试构建的 dex 优化
  • 打开库预索引(这会减慢第一次构建但会加快后续构建速度)

配置是这样的:

<plugin>
    <groupId>com.jayway.maven.plugins.android.generation2</groupId>
    <artifactId>android-maven-plugin</artifactId>
    <inherited>true</inherited>
    <configuration>
        <!-- All your current configuration -->
        <dexOptimize>false</dexOptimize>
         <dex>
            <preDex>true</preDex>
            <preDexLibLocation>/tmp/predexedLibs</preDexLibLocation>
        </dex>
    </configuration>
</plugin>

顺便说一句,我怀疑增量编译器存在一些问题,并且每次所有代码都是从头开始重新编译的。

关于安卓和 Maven : Speed up project compilation and deploy,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13608732/

有关安卓和 Maven : Speed up project compilation and deploy的更多相关文章

  1. 安卓apk修改(Android反编译apk) - 2

    最近因为项目需要,需要将Android手机系统自带的某个系统软件反编译并更改里面某个资源,并重新打包,签名生成新的自定义的apk,下面我来介绍一下我的实现过程。APK修改,分为以下几步:反编译解包,修改,重打包,修改签名等步骤。安卓apk修改准备工作1.系统配置好JavaJDK环境变量2.需要root权限的手机(针对系统自带apk,其他软件免root)3.Auto-Sign签名工具4.apktool工具安卓apk修改开始反编译本文拿Android系统里面的Settings.apk做demo,具体如何将apk获取出来在此就不过多介绍了,直接进入主题:按键win+R输入cmd,打开命令窗口,并将路

  2. ruby - 在 Maven 集成中运行 Ruby 单元测试 - 2

    有没有人有在Maven中运行用Ruby编写的单元测试的经验。任何输入,如要使用的库/maven插件,将不胜感激!我们已经在使用Maven+hudson+Junit。但是我们正在引入Ruby单元测试,找不到任何同样好的组合。 最佳答案 我建议让Maven使用ExecMavenPlugin启动rake测试(exec:exec目标)并使用ci_reportergem生成单元测试结果的XML文件,Hudson、Bamboo等可以读取该文件,以与JUnit测试相同的格式显示测试结果。如果您不需要使用mvntest运行Ruby测试,您也可以只使

  3. (一)专题介绍:移动端安卓手机改造成linux服务器&linux服务器中安装软件、部署前后端分离项目实战 - 2

    快捷目录前言一、涉及到的相关技术简介二、具体实现过程及踩坑杂谈1.安卓手机改造成linux系统实现方案2.改造后的手机Linux中软件的安装3.手机Linux中安装MySQL5.7踩坑实录4.手机Linux中安装软件的正确方法三、Linux服务器部署前后端分离项目流程1.前提准备(安装必要软件,搭建环境):2.前后端分离项目的详细部署过程:总结前言总体概述:本篇文章隶属于“手机改造服务器部署前后端分离项目”系列专栏,该专栏将分多个板块,每个板块独立成篇来详细记录:手机(安卓)改造成个人服务器(Linux)、Linux中安装软件、配置开发环境、部署JAVA+VUE+MySQL5.7前后端分离项目

  4. [ERROR] Error executing Maven. - 2

    [ERROR]ErrorexecutingMaven.报错如下:[ERROR]中的关键提示信息:错误分析:解决:报错如下:错误代码提示:[ERROR]ErrorexecutingMaven.[ERROR]2problemswereencounteredwhilebuildingtheeffectivesettings[FATAL]Non-parseablesettingsD:\apache-maven-3.6.2&repository\apache-maven-3.6.2\conf\settings.xml:entityreferencenamecannotcontaincharacter\'

  5. 无法创建Maven项目:'.../pom.xml'已经存在于VFS(Intellij)中 - 2

    当我想重新创建一个名称但已经删除的Maven项目时,我会收到以下错误消息:无法创建Maven项目:'.../pom.xml'已经存在于VFS中看答案看清洁系统缓存页。在IntellijIdea中打开任何项目选择“文件&gt;无效缓存/重新启动...”单击“无效并重新启动”警告清理系统缓存,请记住:它导致清除当地历史。为避免丢失数据,请在使缓存无效之前检查版本控制系统的更改。导致对当前版本的IntellijIdea中运行的所有项目的完整重建。

  6. javascript - 如何 : Maven project to build JavaScript in Eclipse - 2

    如何配置我的pom以将文件夹用作JavaScript构建路径?我想让开发人员将项目导入到eclipse中,并在eclipse构建路径中自动拥有JavaScript根文件夹,以便自动完成和其他JavaScript支持工作。 最佳答案 这是我所做的,它似乎工作正常。我现在正在使用EclipseJunoSR2(面向Web开发人员的JavaEE)和Maven3.0.5。(我不是Eclipse或Maven方面的专家,所以我确信有一种更优雅的方法可以做到这一点。请告诉我!)根据Maven约定,我们希望拥有如下所示的项目结构:-src+--mai

  7. javascript - 如何在不需要运行浏览器或服务器的情况下在 Maven 中运行 javascript 单元测试? - 2

    我致力于开发包含javascript的网络内容,在某种程度上,它包含比动画和移动值更多的逻辑。我想为这种逻辑实现一些单元测试。我想找到一些方法用javascript编写这些测试,并在我用maven构建web项目时让它们运行。因为我要测试的代码处理方法或对象中包含的逻辑内容,所以我觉得我不应该让服务器运行。另外,我读过Rhino之类的东西,这让我觉得应该没有必要让浏览器从某处开始只是为了执行javascript。我并不是特别关心浏览器的差异——我很少发现我在该领域遇到问题,而且当我遇到问题时,总是与样式或罕见的DOM问题有关。我想测试一下我能否将1加1最后得到2。我在谷歌上搜索了一些,发

  8. java - 最佳实践 : how to host server-side code in the maven repository - 2

    将javascript/html/css代码放入maven存储库的最佳方式是什么,以便java项目可以轻松使用。有没有办法让包含的项目可以很容易地通过包含项目“网络可见”?例如,假设我编写了一个非常有用的tricks.js文件并将其放入mvn存储库中。是否可以创建一个将tricks.js添加为依赖项然后执行的Web项目导致提供tricks.js文件? 最佳答案 外部资源应该打包成工件并发布到存储库(为简单起见,使用jar工件,但您可以指定一个assembly来打包一个zip,而不是明确工件的用途)。maven-dependency-

  9. maven - 2

    #maven1.maven基础 Maven是apache提供的一个项目管理工具,它的作用就是管理项目2.maven作用 1).依赖管理[方便快捷的管理项目依赖的资源(jar包),避免版本冲突问题] 1.依赖denpendency依赖(坐标):一个jar包groupId公司域名倒写artifactId项目名version 版本号坐标:Maven中的坐标是资源的唯一标识,通过该坐标可以唯一定位资源位置。 使用坐标来定义项目或引入项目中需要的依赖。2.仓库种类 本地仓库:自己计算机上的一个目录 远程仓库(私服):一般由公司团队搭建的私有仓库 中央仓库:由Maven团队维护的全球唯一的3.ja

  10. javascript - 通过 Maven 安装 NodeJS - 2

    我看到许多用于JavaScript的较新Maven插件需要在进行构建的机器(本地和CI服务器)上安装NodeJS。例如:yeoman-maven-plugin、npm-maven-plugin等问题是:检查NodeJS是否存在并在缺少时通过Maven作为依赖安装它是否有意义?奖励问题:如果您认为这是个好主意,您将如何完成这项任务? 最佳答案 你可以试试frontend-maven-plugin(通过https://stackoverflow.com/a/19600777/1024571)。根据文档:Thisplugindownloa

随机推荐