我正在尝试打包jar并在清单的属性类路径中我想添加所有可靠的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 " />
但有没有办法可以实际指定控制罐子的目录,这样我就不必直接将所有的罐子复制到当前的罐子里了? 就像我的目录结构是: log4j的/ *。JAR SVN / *。JAR 然后我不会将我的所有jar复制到out目录,并且可以在clasppath attruibute中给出相对路径。
答案 0 :(得分:2)