我想用一个(相同的)ant文件运行两个类似的java程序。
我有下面的build.xml
<project name ="Project" basedir="." default="main">
<property name="src.dir" value="src"/>
<property name="build.dir" value="build"/>
<property name="classes.dir" value="${build.dir}/classes"/>
<property name="jar.dir" value="${build.dir}/jar"/>
<property name="main-class" value="implementation1.Main"/>
<target name="main" depends="clean,zip"/>
<target name="build">
<mkdir dir="build"/>
</target>
<target name="clean">
<delete dir="${build.dir}"/>
<delete file ="${zipname}"/>
</target>
<target name = "compile">
<mkdir dir = "${classes.dir}"/>
<javac srcdir="." destdir="${classes.dir}" includeantruntime="false"/>
</target>
<target name="jar" depends="compile">
<mkdir dir="${jar.dir}"/>
<jar destfile="${jar.dir}/${ant.project.name}.jar" basedir="${classes.dir}">
<manifest>
<attribute name="Main-Class" value="${main-class}"/>
</manifest>
</jar>
</target>
<target name="run" depends="jar">
<java jar="${jar.dir}/${ant.project.name}.jar" fork="true" spawn="true" >
</java>
</target>
在my build.xml所在的目录中,我有一个“src”文件夹。在路径./src/implementation1/i中,我的项目有一个.java文件,implementation1文件夹中有一个单独的主文件。当我在我的文件夹中运行ant时,它就工作了。
但是,我的项目还有另一个(可选)实现,将其命名为projectalt.java,并存储在文件夹./src/implementation2中。
问题1:当我用src中的folderimplementation2运行ant时,会出现很多错误。如果我删除文件夹,蚂蚁就可以正常工作。
问题2:如何设置第一个实现1然后运行第二个实现?
我已经说得有点清楚了。提前谢谢。
1条答案
按热度按时间t2a7ltrp1#
最后,我求助于在eclipse中创建类似的包结构,jar现在创建了2个jar,每个jar都有2个不同的主类,每个主类由各自的run调用运行。