Ant详细教程

Ant安装

解压apache-ant-1.8.4.zip

Antbin目录加入到path

 

Ant使用(手动编译)

新建ant_test文件夹,新建子文件夹ant_test/teach/ant/ant01,例如:D:\Javadev\ant_test\teach\ant\ant01

ant01中,新建build.xml,新建HelloWorld.java并写入代码

1,编辑build.xml,在当前目录的cmd中输入ant,编译,其中build.xml内容如下:

<?xml version="1.0" encoding="UTF-8"?>

<project default="compile">

      <target name="compile">

             <javac destdir="." srcdir="."/>

      </target>

</project>

2,执行过程,编辑build.xml,在当前目录的cmd中输入ant,修改build.xml内容如下:

<?xml version="1.0" encoding="UTF-8"?>

<project default="execute">

      <target name="compile">

             <javac destdir="." srcdir="."/>

      </target>

 

      <target name="execute">

             <java classpath="." classname="HelloWorld"/>

      </target>

</project>

 

1将编译和执行过程放在一起:编辑build.xml,在当前目录的cmd中输入ant

<?xml version="1.0" encoding="UTF-8"?>

<project default="execute">

      <target name="compile">

             <javac destdir="." srcdir="."/>

      </target>

 

      <!—默认自动执行execute-->

      <target name="execute"depends="compile">

             <java classpath="." classname="HelloWorld"/>

      </target>

</project>

 

Ant编译普通Java项目的流程(MyEclipse环境):

Ant详细教程_第1张图片

1,配置MyEclipse环境:

window->preferences->Ant,在Documentation Url 中选择apache-ant-1.8.4/manual/所在的路径

Ant->Runtime中,设置Ant Homeapache-ant-1.8.4/所在的路径

2,新建Java项目,并填入源代码,在项目路径下,新建build.xml文件

3build.xml文件内容如下(新建目录及拷贝源代码部分)

<?xml version="1.0" encoding="UTF-8"?>

<project>

   <!--创建文件夹-->

   <targetname="init">

      <deletedir="build"></delete>

      <mkdirdir="build"/>

      <mkdirdir="build/src"/>

      <mkdirdir="build/classes"/>

      <mkdirdir="build/dist"/>

   </target>

   

   <!--定义源代码文件集-->

   <filesetid="src.path"dir="src">

      <includename="**/*.*"/> <!--包含src下所有文件-->

      <excludename="**/Test*"/><!---排除以Test开头的文件-->

   </fileset>

 

   

   <!--拷贝src源文件到build/src-->

   <targetname="cpysrc"depends="init">

      <copytodir="build/src">

          <filesetrefid="src.path"></fileset>

      </copy>

   </target>

   

   <!--

    删除文件夹

    <target name="delete">

      <delete dir="build"></delete>

    </target>

    -->

   

</project>

4,执行编译

右击右侧Outline中的project下的copsrc,选择Run as -> Ant build

即可新建相应的文件夹,并把源代码拷贝到build/src

<?xml version="1.0" encoding="utf-8"?>

<projectdefault="execute">

 

   <!--定义属性,相当于定义一些常量,调用的时候使用$符号-->

   <propertyname="build.dir"value="build"></property>

   <propertyname="build.classes"location="${build.dir}/classes"></property>

   <!--路径使用location时,会适应具体操作系统-->

 

   <!--创建文件夹-->

   <targetname="init">

      <deletedir="${build.dir}"></delete> <!—尽可能多的使用属性,便于以后更改-->

      <mkdirdir="${build.dir}"/>

      <mkdirdir="${build.src}"/>

      <mkdirdir="build/classes"/>

      <mkdirdir="build/dist"/>

   </target>

   

   <!--定义源代码文件集-->

   <filesetid="src.path"dir="src">

      <includename="**/*.*"/> <!--包含src下所有文件-->

      <excludename="**/Test*"/><!---排除以Test开头的文件-->

   </fileset>

 

   

   <!--拷贝src源文件到build/src-->

   <targetname="cpysrc"depends="init">

      <copytodir="build/src">

          <filesetrefid="src.path"></fileset>

      </copy>

   </target>

   

   <!--编译-->

   <targetname="compile"depends="init">

      <javacdestdir="build/classes"srcdir="src"></javac>

   </target>

   

   <!--打包-->

   <targetname="jar"depends="compile">

      <jardestfile="build/dist/hello.jar"basedir="build/classes">

          <manifest>

             <attributename="Main-Class"value="ant.zttc.edu.cn.HelloWorld"/>

             <attributename="Build-By"value="LiuLiBo"/>

          </manifest>  

      </jar>

   </target>

   

   <!--运行-->

   <targetname="execute"depends="jar,cpysrc">

      <echo>based on classname</echo>

      <javaclassname="ant.zttc.edu.cn.HelloWorld"classpath="build/classes">

          <argvalue="zhangsan"/><!—传命令行参数-->

          <argvalue="lisi"/>

      </java>

      

      <echo>based on jar</echo>

      <javajar="build/dist/hello.jar"fork="true">

          <argvalue="zhangsan"/>

          <argvalue="lisi"/>

      </java>

   </target>

   

   <!--

    删除文件夹

    <target name="delete">

      <delete dir="build"></delete>

    </target>

    -->

   

</project>

 

针对属性的优化策略

项目目录下新建build.properties文件,用来存放属性(但路径常量通常不存放在properties,因为properties默认为key-value对,不能取location,build.properties内容如下:

execute.class=ant.zttc.edu.cn.HelloWorld

jar.name=hello.jar

build.xml通过如下方式导入,使用方式照旧

<!--引入外部属性文件build.properties-->

<propertyfile="build.properties"></property>

<echo>${execute.class}</echo>

 

Ant详细教程_第2张图片

<!--导出环境变量到env-->

<propertyenvironment="env"></property>

<!--测试-->

<targetname="test">

   <echo>${build.classes}</echo>

   <echo>${env.CATALINA_HOME}</echo>

   <echo>${env.JAVA_HOME}</echo>

</target>

输出如下:

test:

    [echo] D:\Javadev\JUnit\ant02\build\classes

    [echo] C:\apache-tomcat-6.0.32

    [echo] C:\Program Files\Java\jdk1.6.0_26

你可能感兴趣的:(Ajax,ant,MyEclipse,properties,encoding)