如何从命令行合并两个dex文件 我以前用于整理源代码和abc.jar的命令

问题描述

最近几天,我开始深入了解 android studio 在幕后的工作原理。

我探索了许多工具,例如aapt,dx,dalvikvm等。

现在我有一个非常简单的问题。我有一个大约abc.jar的jar文件(例如称为2.7 MB),并且我的应用程序中还有一个很小的Java代码

首先,我将源代码编译为.class文件。然后,将.class文件abc.jar文件还原.dex文件。 花了大约40到50秒。但是我能够成功运行该应用程序。

我以前用于整理源代码和abc.jar的命令

dx --dex --output=classes.dex abc.jar *class_files*

现在的问题是,每当我修改代码时,都必须花费数年时间 redex 所有内容包括abc.jar)。现在,我想要的是是否存在,我只需要对一次abc.jar进行一次dex,然后每当我对自己的代码进行更改时,我都会采用abc的 dexed 版本。 .jar并将其添加到我的源代码

就像 android studio 一样。如果您添加了一些外部库,首先需要花费一些时间dex这些,但是此后只要您修改代码,就不必{{ 1}}是所有 libaries 从头开始的,它只是使用redex个库并将它们添加pre-dexed

提前谢谢

解决方法

最后,经过几天的研究,我找到了一种方法...

我认为使用d8是因为dx已贬值。

d8 dexfile1.dx dexfile2.dex

输出为classed S.dx