ApacheAnt-使用build.xml编译和运行
我想编译然后执行我的程序,给它两个输入参数。为什么不起作用ApacheAnt-使用build.xml编译和运行,xml,apache,ant,build,build.xml,Xml,Apache,Ant,Build,Build.xml,我想编译然后执行我的程序,给它两个输入参数。为什么不起作用 <?xml version="1.0" encoding="UTF-8"?> <project default="run" name="MyProgram compile and run"> <target name="run" depends="compile"> <classpath path="." /> <exec executable="MyProgra
<?xml version="1.0" encoding="UTF-8"?>
<project default="run" name="MyProgram compile and run">
<target name="run" depends="compile">
<classpath path="." />
<exec executable="MyProgram">
<arg value="80"/>
<arg value="C:/"/>
</exec>
</target>
<target name="compile">
<javac srcdir="." destdir="." />
</target>
</project>
你到底想干什么?您正在编译一组Java代码,然后使用exec执行MyProgram。那个文件名为MyProgram.exe吗?或者,这是Java代码吗 如果MyProgram是通过javac编译的java代码,则可能需要使用运行java运行时引擎的任务来执行编译的*.class文件 我假设您有一个名为MyProgram.Java的Java文件,您希望编译它并执行MyProgram.class
类路径标记在那里无效。为什么不?我的构建文件与MyProgram.java位于同一文件夹中。或者它的位置不对?类路径用于java和javac任务,不能用作目标的嵌套标记。不要使源目录和destdir目录相同!创建某种类型的构建目录并将其用作destdir。
<project name="MyProgram" default="run" basedir="."> <!-- No spaces in project name! -->
<target name="clean">
<delete dir="${basedir}/dest"/>
</target>
<!-- Put the Java Source and Destination under their own directories -->
<target name="compile">
<mkdir dir="${basedir}/dest"/>
<javac srcdir="${basedir}/src"
destdir="${basedir}/dest"/>
</target>
<target name="run">
<!-- Assuming file called dest/MyProgram.class was built -->
<java classname="MyProgram"
classpath="${basedir}/dest">
<arg value="80"/>
<arg value="C:"/>
</java>
</target>