android - ant 如何禁用 pre-dexing r21+

标签 android ant dex

你好,我的 ant 构建在更新到 r21 后需要永远进行预索引

[dex] 预德兴 myproject/android/google-play-services_lib/bin/classes.jar ->classes-27fa775977cf84dcd4ef76d9015649a6.jar

这使我的编译时间增加了一倍多。如果我只进行一次预索引,那么预索引会加快速度,但实际上我多次针对不同的 ant 构建多次重新配置我的项目。所以他们都 pre-dex ,这很烦人。

我可以在 Ant 脚本中启用一个标志吗?

我查看了一个 ant-maven github 项目,但没有找到关闭此功能的方法,但我不能 100% 确定该项目是相关的。

帮忙?

最佳答案

从 build.xml 中,您似乎可以将所有不同构建的属性 out.dex.input.absolute.dir 更改为指向目标目录之外的单个目录。如果存在 pre-dexed 文件,我猜构建系统不会再次尝试对其进行 pre-dex 处理。

out.dex.input.absolute.dir

使用maven android plugin 】,帖子here表示 predex 默认情况下处于关闭状态,尽管该帖子已经发布了一天,所以也许您需要获取插件的最新测试版本。您可以使用

禁用 predex
    <dexPreDex>false</dexPreDex>

关于android - ant 如何禁用 pre-dexing r21+,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14526692/

相关文章:

ant - 提高 ivy resolve 的性能

Android Multidex 列出所有类

android - 打开新帖子作为意向 - Facebook 移动版

java - RecyclerView 显示为空

android - 如何获取并列出 Android 中所有已安装/可用的导航应用程序及其图标?

Ant 路径转换

mysql - mysql 命令中 < 的替代方案

android - 链接到外部 JAR 库时使用 DexClassLoader 进行反射

Android:导入时 Dex 转换失败

android - java.io.ByteArrayOutputStream.expand(ByteArrayOutputStream.java :91)? 处的 java.lang.OutOfMemoryError