Java build.xml ANT build中类路径的相对路径
我试图打包一个jar,在清单的属性classpath中,我想添加所有可靠jar所在的路径。一种方法是复制目录中的所有JAR,并在类路径中提供名称,如下所示:Java build.xml ANT build中类路径的相对路径,java,eclipse,ant,jar,Java,Eclipse,Ant,Jar,我试图打包一个jar,在清单的属性classpath中,我想添加所有可靠jar所在的路径。一种方法是复制目录中的所有JAR,并在类路径中提供名称,如下所示: <path id="lib-classpath"> <fileset dir="${libApp.dir}"> <include name="**/*.jar"/> </fileset> </path>
<path id="lib-classpath">
<fileset dir="${libApp.dir}">
<include name="**/*.jar"/>
</fileset>
</path>
<!-- convert classpath to a flat list/string -->
<pathconvert property="lib.classpath" pathsep=" ">
<path refid="lib-classpath" />
<flattenmapper />
</pathconvert>
<copy todir="${out.dir}" flatten="true">
<fileset dir="${libApp.dir}" />
</copy>
<echo message=" Generating JAR " />
<delete file="${out.dir}/${file-name}" />
<jar destfile = "${out.dir}/${file-name}" basedir = "${bin.dir}" includes = "**/*">
<fileset dir=".">
<include name="**/*.properties" />
</fileset>
<manifest >
<attribute name="Class-Path" value="${lib.classpath}" />
<attribute name="Main-Class" value="com.executive.ThreadPool"/>
</manifest>
</jar>
<echo message=" ...JAR Created for " />
但是有没有一种方法可以让我真正指定包含jar的目录,这样我就不必直接将所有jar复制到当前目录中?
就像我的目录结构是:
log4j/*.jar
svn/*.jar
然后,我不会将所有jar复制到out目录,并可以在CLASSPATH属性中给出相对路径。签出ANT任务
例如: