引言:
android项目,引入的 .jar包 和 .aar中 有相同的类,导致编译冲突,由于这些依赖项没有上传到Maven仓库,无法使用 exclude 排除,只能尝试修改jar文件,删除重复的代码,再重新打包。
效果:
修改前的 test.jar(770k) :

删除了 com.zego目录,重新打包后的 test.jar (233k):

步骤:
下面记录一下修改jar文件的步骤:
技巧:先新建个文件夹,方便把 jar 的内容都集中在一起。
1、使用 jar命令 解压 test.jar文件:
jar -xvf test.jar

解压后的目录:

2、删除指定的文件或目录:
// rd adc.class// 删除某个文件
rmdir /s /q im // 删除im目录

修改后的目录:

3、重新打包jar文件:
jar cvf test.jar . //打包当前目录下所有的文件

新打包的jar文件:

本文讲述了在Android项目中遇到.jar和.aar包内有相同类导致编译冲突的情况,由于不能从Maven仓库排除依赖,作者提供了手动修改jar文件、删除重复代码并重新打包的详细步骤,包括使用jar命令进行解压、删除指定内容和重新打包的过程。





