我的代码被部署为JAR文件。这个JAR包含一个目录lib
,其中包含许多第三方JAR文件,这些文件是我的代码所需的。我已经通过MANIFEST.MF
使用Ant将它们添加到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
还有一个名为queries.properties
的文件位于JAR的根目录下。
还需要两个属性文件,我希望它们与JAR文件位于同一目录下,并且代码能够找到它们。我认为为了使代码能够找到这些属性文件,它们需要在classpath
中。因此,我需要将JAR文件的目录添加到classpath
中。
首先,这是正确的方法吗?还是应该使用其他方式来查找属性文件?
如果这是正确的,如何使用Ant在MANIFEST.MF
中将JAR的当前目录添加到classpath
中?我使用manifestclasspath
Ant任务将lib
目录中的JAR文件添加到classpath
中。
user.home
的子目录中(这样它们就可以轻松地被我的备份脚本访问,而不是软件,因为软件没有备份)。或者,在应用程序安装时,由我选择位置(使用文件选择器)放置。 - Andrew Thompson