[转]Ant学习笔记——自己构建Ant编译环境

自从年初开始用NetBeans6.0,才接触到Ant。
这是今年6月份的一篇Ant学习笔记。

安装
1.下载并构建环境。
  去官网下载src包和bin包。解压缩它们到同一目录,运行build.bat,bootstrap.bat
2.设置系统环境变量
  新建ANT_HOME,值为解压缩的目录。如C:\ant\apache-ant-1.7.0
  在PATH末尾追加%ANT_HOME%\bin;
3.测试安装环境
  命令行下输入ant -version,成功看到Ant版本信息。

运行
1.建一个项目文件夹firsttest
2.把项目开发完成的文件和文件夹放到firsttest
  例:java文件的文件夹src,web文件的文件夹web
3.firsttest下新建文件build.xml,编辑如下: 

<?xml version="1.0" encoding="UTF-8"?>                                    
                                     
<project name="ant_firsttest" default="dist" basedir=".">                                    
  <description>ant firsttest!</description>                                    
                                        
  <!-- set global properties for this build -->        
  <!--设定变量,之后用。location为文件夹路径-->                            
  <property name="src" location="src"/>                                    
  <property name="build" location="build"/>                                    
  <property name="dist"  location="dist"/>                                    
  <property name="web"  location="web"/>                                    
           
  <!--设置properties文件位置.这里没用到。-->                                       
  <!--<property file="nbproject/project.properties"/>-->                                    

  <!--初始化命令-->                                    
  <target name="init">                                    
    <!-- Create the time stamp -->                                    
    <tstamp/>                                    
                
    <!--mkdir是建立文件夹,${build}即刚才设定的变量。这几行都在干这事。-->    
    <!-- Create the build directory structure used by compile -->                                    
    <mkdir dir="${build}/WEB-INF/lib"/>                                    
    <mkdir dir="${build}/WEB-INF/classes"/>                                    
                                          
    <mkdir dir="${build}/WEB-INF/classes/javafile/package1"/>                                          
    <mkdir dir="${build}/WEB-INF/classes/javafile/package2"/>                                               
                                         
  </target>                                    

  <!--编译-->                                    
  <target name="compile" depends="init"                                    
        description="compile the source " >                                    
                                            
    <!-- Compile the java code from ${src} into ${build} -->                                    
    <!--javac标签用来设置编译程序的参数,srcdir为java文件路径,destdir为编译后class文件的保存路径。-->
    <javac srcdir="${src}/javafile/package1" destdir="${build}/WEB-INF/classes/javafile/package1"/>                                    
    <javac srcdir="${src}/javafile/package2" destdir="${build}/WEB-INF/classes/javafile/package2"/>                                    
    <!--如果路径下还有别的文件需要一起打包,用copy 命令。-->    
    <copy file="${src}/hello_ant.xml" tofile="${build}/WEB-INF/classes/hello_ant.xml" />                                                                             
                                        
  </target>                                    
            
  <!--编译后就要打包了。-->                                    
  <target name="dist" depends="compile"                                    
        description="generate the distribution" >                                    
    <!-- Create the distribution directory -->                                    
    <mkdir dir="${dist}"/>                                    
                      
       <!--像jsp,jar这些直接用不用编译的文件,直接用copy命令。-->                                
    <copy file="${web}/image/a.gif" tofile="${build}/image/a.gif" />                                    
    <copy file="${web}/WEB-INF/web.xml" tofile="${build}/WEB-INF/web.xml" />                                     
    <copy file="${web}/WEB-INF/lib/a.jar" tofile="${build}/WEB-INF/lib/a.jar" />                                          
    <copy file="${web}/index.jsp" tofile="${build}/index.jsp" />                                     
            
    <!--最后用jar命令打成jar/war文件,文件名和后缀随便起。basedir为欲打包的原文件路经-->                                    
    <jar jarfile="${dist}/ant_firsttest.jar" basedir="${build}"/>                                    
  </target>                                    
    
  <!--删除-->
  <target name="clean"                                    
        description="clean up" >                                    
    <!--设定删除命令要删的路径。-->    
    <!-- Delete the ${build} and ${dist} directory trees -->                                    
    <delete dir="${build}"/>                                    
    <delete dir="${dist}"/>                                    
  </target>                                    
</project>                                        

4.控制台在firsttest目录,输入ant后回车就打包完成了!
  注:输入ant回车自动执行init,compile,dist命令。要想执行clean命令,输入ant clean即可。

附源码firsttest.rar

 

中途碰到了2个问题,有2个jar包无法下载,分别是log4j-1.2.14.jar,和junit4.4.jar。

手动下载后,手动安装即可,cmd中都有相对应的提示。

posted on 2013-04-23 15:35  kkmm  阅读(321)  评论(0编辑  收藏  举报