ant01--基础的build.xml

1. 从http://ant.apache.org/上下载ant的最新版本;

2. 解压,配置环境变量ANT_HOME和PATH;

3.在cmd后输入ant 有 相关提示就是安装成功了,否则不会有这个命令;

4. 在eclipse里开发的时候可以让它自动为我们生成build.xml文件,在项目上右键export->gereral->Ant Builderfiles(有的eclipse版本没有这个选项比如3.5.0版本,请下载3.7.2以上     的版本),这样xml里就有了自动提示了,写起来特别的方便;

5.以下是我上手的一段代码,从helloworld小程序开始: 

<project name="HelloWorld" default="local.deploy" basedir=".">   <!--设置项目名称,设置要允许到的操作级数以及根目录-->
<property name="src" value="src"/>                  <!--变量区  常量用value  路径用location(这样可以减去OS不同的麻烦)-->
<property name="dest" value="dest/classes"/>
<property name="hello_jar" value="hello1.jar"/>
<property name="lib" value="lib"/>   (如果属性太多 可以建立一个build.properties文件 加入键值对如lib = lib,但是路径的不建议这么做,在xml引用的是<property file="build.properties"/>)
<target name="init">                                             <!--初始化操作-->
<mkdir dir="${dest}"/>
</target>
<target name="compile" depends="init">        <!--编译操作,调用javac命令-->
<javac srcdir="${src}" destdir="${dest}"/>
</target>
<target name="build" depends="compile">       <!--打包操作-->
<jar jarfile="${hello_jar}" basedir="${dest}"/>
</target>
<target name="run" depends="build">                <!--运行java程序操作-->
<java classname="hust.edu.HelloWorld" classpath="${hello_jar}"/>
</target>
<target name="clean">                                         <!--删除临时文件操作-->
<delete dir="${dest}" />
<delete file="${hello_jar}" />
</target>
<target name="rerun" depends="clean,run">
<ant target="clean" />
<ant target="run" />
</target>
<property name="dist.dir" location="dest"/>                   <!--从这里开始讲解的是为web应用程序打包的操作--->
<property name="project.name" value="myTest"/>      <!--设置工程名-->
<property name="project.version" value="1.1"/> <!--设置工程版本-->
<target name="war" depends="compile"> <!--打war包操作-->
<war destfile="${project.name}-${project.version}.war" needxmlfile="false">      
<classes dir="${dist.dir}"></classes> <!--将生成的class文件打进去-->
<lib dir="${lib}"><include name="*.jar"/></lib> <!--将第三方lib库打进去-->
</war>
</target>
<property name="tomcat.install.dir" location="D://学习软件//tomcat6.0//Tomcat 6.0"/> <!--设置tomcat安装路径-->
<target name="local.deploy" depends="war"> <!--部署操纵-->
<copy file="${project.name}-${project.version}.war" todir="${tomcat.install.dir}/webapps/manager"/> <!--开始复制文件到项目下-->
</target>
</project>

6. 运行:你可以在eclipse里运行那个build.xml文件 ,控制台会显示相关运行信息;还有一种方法就是在dos里运行,进去到build.xml所在目录,输入ant回车即可,你也可以带参数运行,比如ant build 、ant compile 、ant run 等,就是你想让它为你运行到哪一步骤操作就停止。


再来贴一个build.xml给大家:

  <? xml version="1.0" encoding="UTF-8" ?>
- < project default =" execute " >
  < property name =" build.dir " location =" build " />
<!--
使用属性定义相应的路径时,一定使用location而不要使用value
  -->
  < property name =" build.classes " location =" ${build.dir}\classes " />
  < property name =" build.src " location =" ${build.dir}/src " />
  < property name =" build.lib.dir " location =" ${build.dir}/dist " />
<!--
<property name="execute.class" value="ant.zttc.edu.cn.HelloWorld"/>
	<property name="jar.name" value="hello.jar"></property>
	
  -->
<!--
如果属性太多,可以将属性放置到一个外部文件中定义,之后进行引用
	  特别注意:如果是路径不建议在外部文件中定义,因为此时就不会设置location的值
  -->
  < property file =" build.properties " />
<!--
把环境变量中的参数到处到env这个变量中
  -->
  < property environment =" env " />
- < target name =" test " >
  < echo > ${ant.home} </ echo >
  < echo > ${ant.version} </ echo >
  < echo > ${env.CATALINA_HOME} </ echo >
  < echo > ${env.OS} </ echo >
  </ target >
<!--
fileset可以设定一组文件集来进行操作,dir指明文件集要进行选择的路径,
	通过id可以指定这个文件的名称,在使用的时候进行直接的引入
	include和exclude可以设定包含返回和排除范围**/*.*所有目录中的所有文件
	
  -->
- < fileset id =" src.path " dir =" src " >
  < include name =" **/*.* " />
<!--
<exclude name="**/*.java"/>
  -->
  </ fileset >
- < target name =" init " >
  < delete dir =" ${build.dir} " />
  < mkdir dir =" ${build.dir} " />
  < mkdir dir =" ${build.src} " />
  < mkdir dir =" ${build.classes} " />
  < mkdir dir =" ${build.lib.dir} " />
  </ target >
- < target name =" copySrc " depends =" init " >
- < copy todir =" ${build.src} " >
  < fileset refid =" src.path " />
  </ copy >
  </ target >
- < target name =" compile " depends =" init " >
  < javac destdir =" ${build.classes} " srcdir =" src " />
  </ target >
- < target name =" jar " depends =" compile " >
- < jar destfile =" ${build.lib.dir}/${jar.name} " basedir =" ${build.classes} " >
- < manifest >
  < attribute name =" Main-Class " value =" ${execute.class} " />
  < attribute name =" Build-By " value =" Konghao " />
  </ manifest >
  </ jar >
  </ target >
- < target name =" execute " depends =" jar,copySrc " >
  < echo > 基于类路径的classname来完成执行 </ echo >
- < java classname =" ${execute.class} " classpath =" ${build.classes} " >
  < arg value =" 张三 " />
  < arg value =" 李四 " />
  < arg value =" 王五 " />
  </ java >
  < echo > 基于jar文件执行 </ echo >
- < java jar =" ${build.lib.dir}/${jar.name} " fork =" true " >
  < arg value =" 张三 " />
  < arg value =" 李四 " />
  < arg value =" 王五 " />
  </ java >
  </ target >
</ project >

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值