ANT 在项目中的使用

类别:Java 点击:0 评论:0 推荐:


ANT目录设置及说明:

build.bat    //设置环境变量,执行ant(可暂时不用)

build.xml    //ant的配置文件

/
+- dist    //放置编译,打包后的最终文件

+- src
   +- package    //放置java源文件
   +- webroot    //jsp源文件及相关配置文件

+- build    //放置编译后的文件

+- lib    //放置编译所需要相关类文件

+- doc    //生成的api文档

说明:
    JAVA源文件放在SRC下,JSP源文件放在SRC下的WEBROOT目录下.
 执行ANT命令即可.
 在dist目录下:classes文件,jar包,war包
 附build.xml文件
 
//=========================================

<?xml version="1.0" encoding="GB2312" ?>
 <!--
 =======================================================================
   Copyright (c) 2004  http://www.bcxy.com All rights reserved.
 =======================================================================
 -->

 <project default="war" basedir=".">

 <!--主要的系统环境属性-->
 <property environment="env"/><!--取window,unix...的环境变量-->
 <property name="java.home" value="${env.JAVA_HOME}"/>
 <property name="ant.home"  value="${env.ANT_HOME}"/>

 <!--主要的app环境属性-->
 <property name="app.name"      value="bcxy"/>
 <property name="app.jar"       value="${app.name}.jar"/>
 <property name="app.war"       value="${app.name}.war"/>

 <property name="packages" value="test.*"/>

 <!--app中src的属性-->
 <property name="src.dir"    value="src"/>

 <!--app中web的属性-->
 <property name="web.dir"    value="${src.dir}/webroot"/>

 <!--app用到的lib-->
 <property name="lib.dir" value="lib"/>

 <!--app的build目录-->
 <property name="build.dir"      value="build"/>
 <property name="build.lib"      value="${build.dir}/WEB-INF/lib"/>
 <property name="build.classes"      value="${build.dir}/WEB-INF/classes"/>

 <!--app的dist目录-->
 <property name="dist.dir"      value="dist"/>

 <!--app的docs目录-->
 <property name="doc.dir"      value="doc"/>

 <!--设置CLASSPATH-->
 <path id="classpath">
  <pathelement path="${env.CLASSPATH}"/>
  <fileset dir="${lib.dir}">
     <include name="**/*.jar"/>
  </fileset>
 </path>

 <!--
 ===================================================================
   init 准备目录(File Tasks)
 ===================================================================
 -->
 <target name="init">
  <!--清除以前目录-->
  <delete dir="${build.dir}" failonerror="false"/>
  <delete dir="${doc.dir}" failonerror="false"/>
  <delete dir="${dist.dir}" failonerror="false"/>
  <!--准备目录-->
  <mkdir dir="${build.dir}"/>
  <mkdir dir="${build.lib}"/>
  <mkdir dir="${build.classes}"/>
  <mkdir dir="${doc.dir}"/>
  <mkdir dir="${dist.dir}"/>
 </target>

 <!--
 ===================================================================
   Build the code (Compile Tasks,File Tasks)
 ===================================================================
 -->

 <target name="build" depends="init">
        <echo message="build start......." />

  <javac srcdir="${src.dir}" destdir="${build.classes}">
   <classpath refid="classpath"/>
  </javac>

 </target>

 <!--
 ===================================================================
   生成JAVA文档
   Create the documents
 ===================================================================
 -->

 <target name="javadoc" depends="build">
    
  <echo message="javadoc start......" />

  <javadoc packagenames="${packages}"
           sourcepath="${src.dir}"
     destdir="${doc.dir}"
     author="true"
     version="true">
    <classpath refid="classpath"/>
  </javadoc>

 </target>

 <!--
 ===================================================================
   打包文档(Archive Tasks)
   Create the project jars: xxx1.jar and xxx2.jar
 ===================================================================
 -->
 <target name="jar" depends="javadoc">
    
  <echo message="jar start......" />

  <jar jarfile="${dist.dir}/${app.jar}">
      <fileset dir="${build.classes}"/>
  </jar>

 </target>

 <!--
  ===================================================================
    Create the distribution that can run (Archive Tasks)
    主要是从各目录中把该copy的copy上
  ===================================================================
 -->

 <target name="dist" depends="jar">
  <!--copy bin 执行文件 -->
  <echo message="dist start......" />

  <copy todir="${dist.dir}">
   <fileset dir="${build.classes}/"/>
  </copy>

    </target>

 <!--
  ===================================================================
   打包文档(Archive Tasks)
   Create the project war xxx1.war
  ===================================================================
 -->

 <target name="war" depends="dist">

     <echo message="war start......" />

  <copy todir="${build.dir}/">
      <fileset dir="${src.dir}/webroot"/>
  </copy>

  <copy todir="${build.lib}/">
      <fileset dir="${lib.dir}"/>
  </copy>

  <jar jarfile="${dist.dir}/${app.war}">
      <fileset dir="${build.dir}"/>
  </jar>

 </target>

 <!--
  ===================================================================
    Create the distribution that can run (Archive Tasks)
    清除
  ===================================================================
 -->

 <target name="clean" depends="war">
  <!--清除文件夹 -->
  <echo message="clean start......" />

  <delete dir="${build.dir}" failonerror="false"/>

  </target>

</project>

=========================================//

本文地址:http://com.8s8s.com/it/it14766.htm