将多个罐子合并到一个罐子里

Ham*_*aya 12 java jar

我的应用程序需要多个罐子才能工作.由于它是桌面应用程序,因此无法让用户负责安装.所以在我的构建脚本中,我将jar内容解压缩到我的构建目录中删除清单文件,编译我的软件并再次将其jar.一切正常,因为我的问题是这个过程有长期的副作用吗?

Aar*_*lla 12

在过去,有怪异的内容(如包含DB2驱动程序的JAR com.ibmcom.IBM;在Windows文件系统解压缩后,这两个包将被合并).

您需要注意的唯一问题是签名的jar和META-INF中的其他文件,这些文件在多个源JAR中可能具有相同的名称.

所有这些问题的简单解决方案是使用One-JAR.它允许首先将几个JAR包装成一个而不解压缩它们.并阅读此答案:将发布合并到一个JAR文件的最简单方法