Ant 使用出探

来源:互联网 发布:你摊上大事了by知自在 编辑:程序博客网 时间:2024/05/17 02:52

Ant?蚂蚁?

Ant是“另一个简洁工具”(Another Neat Tool)的所写,而现在这个名字作为首字母缩写词的含义逐渐不为
人之,而它与蚂蚁之间的类比却显得更为重要。在这里就不多说了。

我们不希望编写的软件中出现bug,那么Ant正是我们需要的,Ant能构控制整个Java的构建过程。

这里我们以一个实例为蓝本,进行Ant的初步知识的介绍:
例子工程目录如下:

其中Main.java中内容为:

package com.zhang.test;
 
publicclassMain {
   
    publicstaticvoid main(String args[])
    {
       if(args.length>0)
           for(int i=0;i<args.length;i++)
           {
              System.out.println("参数 "+i+" : "+args[i]);
           }
       else
           System.out.println("没有任何参数");
    }
}
 
build.xml文件的内容为:
   双击其中的目标即可。Ant运行时会自动将Main.java编译到build/classes文件夹下面,然后将编译好的类文件
<?xml version="1.0" encoding="UTF-8"?>
<projectname="secondbuild"default="execute">
    <description>编译并运行一个简单得程序</description>
    <targetname="init"description="初始化目标,创建build/classes目录">
       <mkdirdir="build/classes"/>
       <mkdirdir="dist"/>
    </target>
   
    <targetname="compile"depends="init"description="编译原文件夹到目的地文件夹(destination">
       <javacsrcdir="src"destdir="build/classes"></javac>
       <echo>编译顺利完成</echo>
    </target>
   
    <targetname="archive"depends="compile"description="将编译好的类打包">
       <jardestfile="dist/project.jar"basedir="build/classes"></jar>
    </target>
   
    <targetname="clean"depends="init"description="清除临时类目录">
       <deletedir="build"></delete>
       <deletedir="dist"></delete>
    </target>
   
    <targetname="execute"depends="compile"description="运行这个程序">
       <echolevel="warning"message="正在运行..."></echo>
       <java
           classname="com.zhang.test.Main"
           classpath="build/classes"
           >
       <argvalue="a"/>
       <argvalue="b"/>
       <argfile="."/>
       </java>
    </target>
</project>
 
要在Eclipse运行Ant需要执行以下步骤:
点选Window ->Show View -> Ant ,打开Ant试图窗口 
---------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------
打包到dist/project.jar中。这一过程是Ant根据build.xml文件中编写的target自动运行的,方便吧。^_^