ant直观入门

来源:互联网 发布:生化危机5游戏知乎 编辑:程序博客网 时间:2024/05/18 02:12

Ant是一种基于Java的build工具。理论上来说,它有些类似于(Unix)C中的make ,但没有make的缺陷。

当一个代码项目大了以后,每次重新编译,打包,测试等都会变得非常复杂而且重复,因此c语言中有make脚本来帮助这些工作的批量完成。在Java 中应用是平台无关性的,当然不会用平台相关的make脚本来完成这些批处理任务了,ANT本身就是这样一个流程脚本引擎,用于自动化调用程序完成项目的编译,打包,测试等。除了基于JAVA是平台无关的外,脚本的格式是基于XML的,比make脚本来说还要好维护一些。

下面通过创建一个HelloWorld.jar可执行文件来展开:

md src

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

创建一个启动的 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

默认的情况下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
Ant和java命令之间许多类似的步骤:


1 0
原创粉丝点击