问题
这几天遇到任务,要把多个Jar包合并成一个,譬如下图
解释:plugins库依赖于netutil库,plugins库本身有retrofit的jar包,netutil库有okhttp的jar包。现在要做成一个jar供客户使用。
plugins库和netutil库生成的jar包的路径为:
build/intermediates/bundles/debug/classes.jar
build/intermediates/bundles/release/classes.jar
需要把三个jar包合并成一个。
解决方法
在命令行中输入jar,可以看到如下情况:
可见jar命令可以对jar进行多种操作。
现在把需要合并的jar包放在同一个目录中,cd到这个目录,调用
jar -xvf jar包名字.jar
对各个jar包进行解压。
解压完后,把jar包移开,调用
jar -cvfM 合并后的jar包名字.jar .
把所有的文件合并成一个单独的jar包。
以上