Ant 基础

(1) Ant 用途

Ant的作用还是很大的,如楼上说到的它可以用来做编译、部署、打包、测试等等工作,虽然现在的IDE环境已经集成了很多这样的功能,但是通常情况下我们还是会很频繁的使用到Ant,一般有这样一些原则:
1.如果你发现你的工作有有许多是每天要做的,或者是经常要反复执行的工作,那么可以考虑使用Ant,这样可以将这样的工作编写为Ant脚本,便于维护和定期执行
2.当你是系统管理员,或者部署人员时,可以考虑使用Ant
3.当你是测试人员,希望在夜晚离开公司时,自动执行一些单元测试,当白天到公司时就能看到结果时,可以考虑使用Ant
4.当你是版本管理人员时可以考虑使用Ant

 

(2) Ant 搭建环境
设置ANT_HOME,PATH中添加ANT_HOME目录下的bin目录
测试一下你的设置,开始-->运行-->cmd进入命令行-->键入 ant 回车,如果看到
Buildfile: build.xml does not exist!
Build failed
那么恭喜你你已经完成ant的设置

 

(3) Ant 命令
1)ant
使用当前目录下的build.xml运行Ant,执行缺省的target。
2)ant -buildfile test.xml
使用当前目录下的test.xml运行Ant,执行缺省的target。
3)ant -buildfile test.xml dist
使用当前目录下的test.xml运行Ant,执行一个叫做dist的target。
4)ant -buildfile test.xml -Dbuild=build/classes dist
使用当前目录下的test.xml运行Ant,执行一个叫做dist的target,并设定build属性的值为build/classes。

 

(4) 一个简单的ANT打包,部署,生成doc的build.xml配置文件写法
<?xml version="1.0" encoding="UTF-8"?>
<!-- name:对应工程的名字;default:需要的缺省任务(运行"ant"不指明任务时执行的任务) -->
<project name="antTest" default="main" basedir=".">
<!-- 建立目录结构
src       JAVA源码编辑目录
lib       jar包(类库)存放目录
classes   编译生成的class文件存放目录
WebRoot   jsp文件存放地方
config    配置文件存放地方
dist      war和javadoc存放目录 
-->
<property name="appName" value="antTest"/>
<property name="src.dir" value="src"/>
<property name="webroot.dir" value="WebRoot"/>
<property name="lib.dir" value="${webroot.dir}/WEB-INF"/>
<property name="classes.dir" value="bin"/>
<property name="webapps.dir" value="D:/Tomcat6.0/webapps/antTest"/>
<property name="dist.dir" value="dist"/> 
<!-- Compilation Classpath 路径设置 -->
<path id="compile.classpath">
 <pathelement location="${classes.dir}"/>
 <fileset dir="${lib.dir}" includes="**/*.jar" />
</path>
<!-- Clean Target 删除先前的目录结构 -->
<target name="clean">
 <delete dir="${clesses.dir}"/>
 <delete dir="${webapps.dir}"/>
 <delete dir="${dist.dir}"/>
 </target>
 <!-- Prepare Target 建立打包的目的目录结构 -->
 <target name="prepare">
 <mkdir dir="${classes.dir}"/>
</target>
<!-- Compile Target 编译代码,在这之前先由prepare建立目录结构 -->
<target name="compile" depends="prepare" description="Compile java sources">
 <javac srcdir="${src.dir}" destdir="${classes.dir}" debug="true">
  <classpath refid="compile.classpath"/>
 </javac>
<!-- 把资源文件下的xml和properties 文件拷贝到classes下面-->
 <copy todir="${classes.dir}">
  <fileset dir="${src.dir}">
   <include name="**/*.xml"/>
   <include name="**/*.properties" />
  </fileset>
 </copy>
</target>
<!-- Deploy Target 在tomcat下建立应用目录并部署应用 -->
<target name="deploy" depends="compile" description="Deploy application to servlet container">
 <mkdir dir="${webapps.dir}"/>
  <copy todir="${webapps.dir}">
   <fileset dir="${webroot.dir}"/>
  </copy>
 <mkdir dir="${webapps.dir}/WEB-INF/classes"/>
  <copy todir="${webapps.dir}/WEB-INF/classes">
   <fileset dir="${classes.dir}" ><include name="**/**" />
   </fileset>
  </copy>
 <mkdir dir="${webapps.dir}/WEB-INF/lib"/>
  <copy todir="${webapps.dir}/WEB-INF/lib">
   <fileset dir="${lib.dir}" includes="*.jar" />
  </copy>
</target>
<!-- Dist Target 默认的target 将应用打包成war,在这之前先执行clean和deploy -->
<target name="main" depends="clean,javadoc,deploy" description="Create binary destribution">
 <jar jarfile="${dist.dir}/${appName}.war" basedir="${webapps.dir}"/>
</target>

<!-- Javadoc Target 生成javadoc --> 
<target name="javadoc" depends="compile" description="Create Javadoc API documentation"> 
 <mkdir dir="${dist.dir}/docs/api"/> 
 <javadoc sourcepath="${src.dir}" destdir="${dist.dir}/docs/api" packagenames="*.*"/> 
</target> 
</project>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值