ant入门教程(一)Hello World with Ant(英文教程文档翻译)(连载)
只能够翻译个大概意思,希望朋友们别见怪...
教程: Hello World with Ant
本文档提供了一步一步用ANT开始JAVA项目构建的教程,不包括更深入了解JAVA与ANT,本教程的目的是为了让你看,使用ANT最简单的步骤。
项目的准备:
我们希望从不同的来源所产生的文件,因此我们的Java源文件将源文件夹中。 所有生成的文件应根据建设 ,并分裂成数个子目录个人步骤: 班我们汇编文件和 JAR为我们自己的白佳文件。
我们希望从所产生的文件来分离源文件,因此我们的JAVA源文件将在
src folder。所有生成的文件应根据构建方式,并为单独的步骤分成数个子目录:classes是我们编译的文件,jar是我们JAR包文件。
我们必须创建一个唯一的src目录:
md src
接着是创建一个打印固定信息的标准输出的JAVA代码,所以仅需要写下这些代码到 src\oata\HelloWorld.java. 目录:
package oata;
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
现在我们开始编译和运行:
md build\classes
javac -sourcepath src -d build\classes src\oata\HelloWorld.java
java -cp build\classes oata.HelloWorld
(这里我想说明下,可能有些新手不知道怎么样编译和运行上面的程序,我在这里简单演示下:
首先运行--cmd--进入你项目所在的路径(cd +目录路径即可):
然后在上面代码拷贝运行
)
运行后 将在控制台打印 Hello World,并且你将现在在的工程目录下多了一个build文件夹,build 下有一个classes文件夹,classes文件夹下正是编译后的HELLOWORLD的class文件,在通过观察:
md build\classes --在当前项目路径下创建了build\classes子路径
javac -sourcepath src -d build\classes src\oata\HelloWorld.java --编译JAVA文件并将其放到classes目录下
java -cp build\classes oata.HelloWorld --运行classes目录下的HelloWorld.java字节码文件。
创建一个 jar-file 不是很困难,但是创建一个启动的 jar-file 需要更多的步骤:创建一个包含启动级的类文件,创建一个目标目录和归档文件:
echo Main-Class: oata.HelloWorld>myManifest
md build\jar
jar cfm build\jar\HelloWorld.jar myManifest -C build\classes .
java -jar build\jar\HelloWorld.jar
注意:不能有任何空格运行时
这是成功运行后的目录。
四步执行应用:
在完成仅用JAVA完成后我们必须考虑我们的构建过程。我们必须编译我们的代码,否则我们不能启动这个项目。啊-开始-是的,我们能提供一个目标。我们应该封装我们的应用。现在仅仅只有一个class文件,不是如果你想要提供一个下载,没有人想下载几百文件(想象一下一个复杂的Swing GUI --所以我们必须创建一个JAR文件(类似于EXE这种直接点击就可启动程序),一个启动JAR文件将会很不错。。。而这是一个很好的实践为有一个干净的目标,这会删除所有生成的东西。许多失败将可以解决只因为一个 “clean build”)
默认的情况下Ant使用 build.xml 作为构建文件的名称,所以我们的.\build.xml 将会是:
<project>
<target name="clean">
<delete dir="build"/>
</target>
<target name="compile">
<mkdir dir="build/classes"/>
<javac srcdir="src" destdir="build/classes"/>
</target>
<target name="jar">
<mkdir dir="build/jar"/>
<jar destfile="build/jar/HelloWorld.jar" basedir="build/classes">
<manifest>
<attribute name="Main-Class" value="oata.HelloWorld"/>
</manifest>
</jar>
</target>
<target name="run">
<java jar="build/jar/HelloWorld.jar" fork="true"/>
</target>
</project>
现在你可以编译打包运行应用了
ant compile
ant jar
ant run
或者更简短的命令
ant compile jar run
While having a look at the buildfile, we will see some similar steps between Ant and the java-only commands:
同时我们可以看一下这个构建文件,我们可以看见许多类似的步骤Ant和java命令之间
java-only |
Ant |
md build\classes
javac
-sourcepath src
-d build\classes
src\oata\HelloWorld.java
echo Main-Class: oata.HelloWorld>mf
md build\jar
jar cfm
build\jar\HelloWorld.jar
mf
-C build\classes
.
java -jar build\jar\HelloWorld.jar
|
<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="oata.HelloWorld"/>
</manifest>
</jar>
<java jar="build/jar/HelloWorld.jar" fork="true"/>
|
增强构建文件
...(待续。。今天就暂时翻译也学习到这里,对ANT也有了一个初步的认识,也知道了我们现在项目中的build.xml是用来作甚么的了,说白了ANT就是一个基于XML文件的构建工具,可以将类似于class啊 jar啊,通过编译项目,设定相应目标路径,进行一个文件的整理编译发布。。呵呵 这当然是很肤浅的,但是对于项目的应用足够了。。不会就对着实例,在看API了解。。。)