天天看点

ant构建java项目

<?xml version="1.0" encoding="gb2312" standalone="yes" ?>
<project name="wdklib"  basedir="./../../" default="build-all">

  <property name="build" value="./"/>
  <property environment="env"/>
  <property name="appname" value="wdklib"/>
  <property name="tomcat.home" value="C:/java/Tomcat/Tomcat7.0"/>
  <!--javac路径-->
  <property name="javacpath" value="C:/java/jdk/jdk1.7.0_13/bin/javac"/>
  <property name="debuglevel" value="source,lines,vars" />
  
  <property name="code.dir" value="${basedir}/code"/>
  <property name="wdk_lib.src.dir" value="${code.dir}/wdk_lib"/>
  <property name="lib.dir" value="${code.dir}/lib"/>
  
  <property name="classes.dir" value="${basedir}/bin/classes"/>
    
  <path id="build.path">
    <!-- wdklib依赖的jar -->
    <fileset dir="${lib.dir}">
      <include name="**/*.jar"/>
      <exclude name="wdklib.java"/>
    </fileset>
    <!-- 依赖的 tomcat 容器jar -->
    <fileset dir="${tomcat.home}/lib">
      <include name="**/*.jar"/>
    </fileset>
    <!--
    <pathelement path="${src.dir}"/>
    <pathelement path="${classes.dir}"/>
    -->
  </path>
  
  <!-- 原代码 -->
  <path id="src.dir">
  	<!-- 主工程 -->
  	<pathelement path="${wdk_lib.src.dir}"/>
  </path>
  
  <!--javac编译-->
  <target name="compile">
    <echo>清理classes目录 ......</echo>
    <!--删除classes目录-->
    <delete dir="${classes.dir}" failonerror="false" deleteonexit="true" excludes="**/*"/>
    <!--创建classes目录-->
    <mkdir dir="${classes.dir}"/>
    <!--使用指定的jdk进行编译-->
    <echo>开始编译 ......</echo>
    <javac fork="true" executable="${javacpath}" destdir="${classes.dir}" includeantruntime="false" debug="on" debuglevel="${debuglevel}">
    	<src refid="src.dir" />
      <compilerarg line="-encoding UTF-8" /> 
      <classpath refid="build.path"/>
    </javac>
  </target>
  
  <!--拷贝文件-->
  <target name="copyfile" depends="compile">
    <!--conf-->
    <echo>copy config file ......</echo>
    <copy todir="${classes.dir}/conf" failonerror="false" overwrite="true">
      <fileset dir="${wdk_lib.src.dir}/conf" includes="**/*.*"/>
    </copy>
  </target>
  
  <!-- 打jar包 -->
  <target name="jar" depends="copyfile">
    <jar destfile="${appname}.jar" basedir="${classes.dir}" includes="**/*.*" update="false">
      <manifest>
      </manifest>
    </jar>
  </target>
  
  <target name="build-all" depends="jar">
  </target>

</project>