我想使用 Google 最近推出的 D8 编译器来构建 dex 文件。
不幸的是,我没有在 build-tools 文件夹中找到 jar 可执行文件(如 dx 工具)。
有谁知道它的位置?
提前致谢。
最佳答案
构建工具中的任何地方都没有 D8.jar。 D8 作为 Maven 工件分发。可以从https://maven.google.com下载.工件名为 com.android.tools:r8
因为 D8 是 R8 项目的一部分。该 jar 包含 R8 和 D8 命令行界面,因此,理论上,它可以从如下命令行下载和使用:
java -cp r8.jar:<...dependency jars> com.android.tools.r8.D8 <D8 arguments here>
java -cp r8.jar:<...dependency jars> com.android.tools.r8.R8 <R8 arguments here>
然而,这个工件 jar 有很多依赖项,如果您想在基于 gradle 的构建之外使用它,那么您自己从源代码构建 r8/d8.jar 可执行 jar 会更容易。操作说明位于 https://r8.googlesource.com/r8/ .生成的 jars 是独立的( bundle 了所有的 deps)。
Android Gradle 插件(因此也包括 Android Studio)不依赖于 com.android.tools:r8
. R8/D8 类 bundle 到 com.android.tools.build:builder
(gradle 插件包含的库之一)代替。
关于android - 用 D8 编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48776347/