[英]Relative paths for classpath in build.xml ANT build
我正在尝试打包一个jar,并在清单的属性classpath中添加所有存在我可靠的jar的路径。 一种方法是复制目录中的所有jar,并在类路径中提供名称,如下所示:
<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 " />
但是,有没有一种方法可以实际指定与jars竞争的目录,从而不必将所有jars直接复制到当前目录中? 就像我的目录结构是:log4j / *。jar svn / *。jar然后,我不会将我的所有jar复制到out目录中,而是可以在clasppath attruibute中给出相对路径。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.