D8 是Android Studio和Android Gradle插件用来将项目的Java字节码编译成DEX字节码的命令行工具。 该命令具有several options:
-输出路径, -每个班级的文件, -禁止重复使用,-main-dex-list 等。
我有几个问题:
我已经尝试将DexOptions command与additionalParameters
属性一起使用。
android {
....
dexOptions {
additionalParameters = ['--main-dex-list=mylist.txt']
}
}
但它似乎不起作用。
在 D8 工具之前,有 DX 工具。可以这样将参数发送给DX:
但是现在这行不通了。可能因为现在D8
的Dexing任务名称不是以dex
字开头。
我还注意到,有一个属性android.enableD8.desugaring=true
可以在gradle.properties
文件中声明。我假设此属性打开了D8
的-no-desugaring 标志。
是否可以通过gradle.properties
文件设置其他属性?是否有所有可用的android.enableD8.*
属性的文档?
更新:
有一个multiDexKeepFile
属性,可以在每个BuildType块中声明该属性。看起来此属性确实执行 D8 的-main-dex-list 标志所做的事情。好的,但是其他标志呢?