我是一个完全的Java菜鸟,我想知道使用build.xml后如何运行Java程序。我正在使用“cmd”,编译后收到消息“构建成功”(?)现在我应该怎么做才能运行程序?
编辑:它创建了一个 .war 文件。我如何执行它?
我假设这是一个简单的“Hello, World”Java 程序 (HelloWorld.java) 并且 HelloWorld.java、build.xml 和 HelloWorld.class(待生成)在当前目录 (.)
HelloWorld.java文件:
public class HelloWorld {
public static void main(String[] args) {
// Prints "Hello, World" to the terminal window.
System.out.println("Hello, World");
}
}
创建两个targets:compile和run在你的build.xml文件中:
<project name="Hello World" basedir=".">
<target name="compile">
<javac srcdir="." includeantruntime="true" includes="HelloWorld.java" destdir="."></javac>
</target>
<target name="run" depends="compile">
<java classname="HelloWorld" fork="true"></java>
</target>
</project>
现在您只需导航到终端中的当前目录并运行:
ant run
不假设所有内容都在根目录中,在参数化所有目录等的 apache ant 页面上提供了一个更好的解决方案,并且是一个更通用和实用的答案。 教程:使用 Apache Ant 的 Hello World
<project name="Hello World" basedir=".">
<mkdir dir="build/classes"/>
<javac
srcdir="src"
destdir="build/classes"/>
<!-- automatically detected -->
<!-- obsolete; done via manifest tag -->
<mkdir dir="build/jar"/>
<jar
destfile="build/jar/HelloWorld.jar"
basedir="build/classes">
<manifest>
<attribute name="Main-Class" value="org.HelloWorld"/>
</manifest>
</jar>
<java jar="build/jar/HelloWorld.jar" fork="true"/>
<target name="compile">
<javac includeantruntime="true" includes="HelloWorld.java"></javac>
</target>
<target name="run" depends="compile">
<java classname="bin/org/HelloWorld" fork="true"></java>
<echo message="Event Generator Finished."/>
</target>
</project>