Java 在ant中创建了多个JAR文件
我试图在一个ant任务中创建4个单独的jar文件,但我不确定如何做到这一点。是不是我必须在舱单上加上什么?我希望能够有一个jar任务,但能够分别运行java程序prob1prob2prob3和prob4。可能吗?任何帮助都将不胜感激 这就是我现在的jar任务:Java 在ant中创建了多个JAR文件,java,ant,jar,Java,Ant,Jar,我试图在一个ant任务中创建4个单独的jar文件,但我不确定如何做到这一点。是不是我必须在舱单上加上什么?我希望能够有一个jar任务,但能够分别运行java程序prob1prob2prob3和prob4。可能吗?任何帮助都将不胜感激 这就是我现在的jar任务: <target name="jar"> <mkdir dir="build/jar"/> <jar destfile="build/jar/prob1.jar" basedir
<target name="jar">
<mkdir dir="build/jar"/>
<jar destfile="build/jar/prob1.jar" basedir="build/classes" includes="build/classes/*">
<manifest>
<attribute name="Main-Class" value="prob1"/>
</manifest>
</jar>
</target>
如果您不喜欢复制粘贴,可以为
jar
任务创建宏:
<macrodef name="create.jar">
<attribute name="name"/>
<sequential>
<jar destfile="build/jar/@{name}.jar" basedir="build/classes"
includes="build/classes/*">
<manifest>
<attribute name="Main-Class" value="@{name}"/>
</manifest>
</jar>
</sequential>
</macrodef>
为您提供以下信息的库:
macrodef是前进的道路-ant contrib永远不是道路。试图让ant成为脚本语言会让人落泪。
<target name="jar">
<mkdir dir="build/jar"/>
<create.jar name="prob1"/>
<create.jar name="prob2"/>
<create.jar name="prob3"/>
<create.jar name="prob4"/>
</target>
<target name="jar">
<mkdir dir="build/jar"/>
<for list="1,2,3,4" param="num">
<sequential>
<jar destfile="build/jar/prob@{num}.jar" basedir="build/classes"
includes="build/classes/*">
<manifest>
<attribute name="Main-Class" value="prob@{num}"/>
</manifest>
</jar>
</sequential>
</for>
</target>