【发布时间】:2011-07-02 15:39:49
【问题描述】:
我有多个 JAR 文件,我必须将它们添加到 Eclipse 的类路径中。
是否可以将 30 个文件合并到一个文件中并包含该文件?
【问题讨论】:
我有多个 JAR 文件,我必须将它们添加到 Eclipse 的类路径中。
是否可以将 30 个文件合并到一个文件中并包含该文件?
【问题讨论】:
首先,你可以。 JAR 只是一个 ZIP 文件。您可以将所有内容提取到一个目录中,然后创建 zip 文件(甚至使用 WinZip 或类似工具手动),调用结果 *.jar(如果您愿意)并将其添加到类路径中。
唯一可能发生的问题是如果多个 jar 文件包含具有相同名称(和路径)的资源。例如,manfest.mf 或其他描述符。在大多数情况下,它不会导致任何问题,但有时如果应用程序代码使用这些资源,您可能会遇到麻烦。
有一些自动工具可以做到这一点。看看 JarJar。
但更重要的问题是:您为什么要这样做?如果您不使用 maven,请将所有库 jar 放在项目下名为 lib 的一个目录中。然后使用 2-3 次单击将所有这些 jars 添加到 eclipse 中的类路径中。而已。
如果您使用的是 maven,请将所有直接依赖项包含到您的 pom.xml 中,编译项目,然后输入mvn eclipse:eclipse。这将为您创建 .classspath 和 .project 。现在就用它吧。
【讨论】:
这里还有一个线程解释了如何package jars for releases,包括使用Ant、jarjar 和eclipse 插件。
【讨论】:
您可能想看看jarjar。
如果你使用蚂蚁任务,你也可以去zipgroupfileset:
<zip destfile="jarlibrary.jar">
<zipgroupfileset dir="lib" includes="*.jar"/>
</zip>
【讨论】:
您可以,但我认为这样做不一定是个好主意。三个可能的原因,毫无疑问还有更多:
我的投票是将 jar 文件分开。
【讨论】:
这个问题似乎很可能重复。请尝试从本论坛的类似文章中找到答案 Clean way to combine multiple jars
【讨论】:
jarjar 项目正是您所需要的。
【讨论】:
Jar 文件只是 ZIP 文件,因此您可以尝试解压缩所有 jar,将所有文件放在一起,然后再次 ZIP。
【讨论】: