gpt4 book ai didi

java - 将当前目录添加到 JAR 文件的类路径

转载 作者:搜寻专家 更新时间:2023-10-31 20:05:20 25 4
gpt4 key购买 nike

我的代码被部署为 JAR 文件。 JAR 包含一个目录 lib,其中包含我的代码需要的许多第三方 JAR。我已经使用 Ant 通过 MANIFEST.MF 将它们添加到 classpath

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.7.0
Created-By: 20.5-b03 (Sun Microsystems Inc.)
Main-Class: com.package.Class
Class-Path: ../lib/c3p0-0.9.1.2.jar ../lib/dbunit-2.4.8.jar ../lib/gua
va-10.0.1.jar ../lib/hsqldb.jar ../lib/javax.jms.jar ../lib/log4j-1.2
.16.jar ../lib/mockito-all-1.9.0.jar ../lib/ojdbc14.jar ../lib/slf4j-
api-1.6.4.jar ../lib/slf4j-log4j12-1.6.4.jar ../lib/xmlunit-1.3.jar

在 JAR 的根目录中还有一个 queries.properties 文件。

还需要另外两个属性文件。我希望它们与 JAR 文件位于同一目录中,并且代码能够找到它们。我相信对于能够找到这些属性文件的代码,它们需要位于 classpath 中。因此,我需要将 JAR 文件的目录添加到 classpath

首先,这是我应该使用其他方法来定位属性文件的正确方法吗?

如果这是正确的,我如何使用 Ant 将 JAR 的当前目录添加到 MANIFEST.MF 中的类路径?我使用 manifestclasspath Ant 任务将 lib 目录中的 JAR 添加到 classpath

最佳答案

您是否尝试过添加 . 作为对当前目录的引用?

   <jar jarfile="dummy.jar">
<manifest>
<attribute name="Main-Class" value="com.package.Class"/>
<attribute name="Class-Path" value=". ${jar.class.path}"/>
</manifest>
</jar>

另请参阅 Executable jar won't find the properties files

关于java - 将当前目录添加到 JAR 文件的类路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9532716/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com