Java 递归地将JAR包含到类路径中
我有一个项目,在几个目录中有几个第三方JAR文件。目前,该项目使用一些ant技巧将所有jar文件递归地包含到类路径中。我想为另一个站点构建一个部署,其中包括将我自己的代码放入一个文件中,并以某种方式包括我需要的其他JAR。命令行上的通配符不会递归地包含JAR。我希望部署在Windows或Linux中工作 我似乎有以下选择:Java 递归地将JAR包含到类路径中,java,ant,Java,Ant,我有一个项目,在几个目录中有几个第三方JAR文件。目前,该项目使用一些ant技巧将所有jar文件递归地包含到类路径中。我想为另一个站点构建一个部署,其中包括将我自己的代码放入一个文件中,并以某种方式包括我需要的其他JAR。命令行上的通配符不会递归地包含JAR。我希望部署在Windows或Linux中工作 我似乎有以下选择: 在我的JAR中包含ant并运行现有脚本 以某种方式将JAR重新组织到一个目录中,这样我就可以在类路径中使用通配符。希望它不会破坏第三方库 手动创建一个大的、丑陋的类路径 有人
使用ant:use copy with flant=“true”并包含指示要递归通过的目录/jar的文件集,不应该有太多的技巧。选项4:目标是让你的应用程序只需
java -jar your.jar
主类和类路径在your.jar
的MANIFEST.MF
中设置。使用ant在构建时创建类路径。这可以是一个大而丑陋的嵌套树,也可以是lib
中一个大而丑陋的扁平树
例如,请参阅和。您可以使用并将所有内容放在一个JAR文件中。您需要验证第三方许可和分发条款,以确保您可以重新打包它们的库。您可以将jar放在一个目录中,并包含一个构建类路径的脚本。如果jar依赖于它的位置,那个罐子坏了——我当然从来没有见过这样的事情。@Dave Newton这是罐子清单的一个功能,请看@Matt,他仍然需要列举主罐子中的罐子列表。@Jagat编辑以澄清,我是在回应“罐子坏了”的评论