zoukankan      html  css  js  c++  java
  • ANT入门&用ANT编译java项目

    第一次接触ant是15年在无锡某软件公司实习时,当时的项目是由多个模块组成,开发分成模块开发的几个小组。为了提高开发效率,采用这种编译项目的方法。

    最近接触到flex项目,采用eclipse自动编译的方法,开发效率极低。于是着手写自己的第一个bulid.xml文件。

    (前提,jdk已配置好,此处不再赘述)

    入门:下载并配置ant.

    下载完成后直接解压到指定目录就ok了,然后配置环境变量。

    PATH:C:Program FilesApache Software Foundationapache-ant-1.9.7in;

    ANT_HOME:C:Program FilesApache Software Foundationapache-ant-1.9.7

    配置完成后:cmd 输入ant -version

    编译java项目:

    首先在项目中新建build.xml  和build.properties(用于属性的设置)文件

    build.xml:

    build文件主要由两部分组成:project和target,target之间可以有依赖关系,一般web项目,首先清除已经生成的class文件,然后再编译,最后copy到tomcat.

    <?xml version="1.0" encoding="UTF-8"?>
    <project name="nczsc" default="build.proj" basedir="." >
        <property file="build.properties"/>
        <target name="info">
         <echo message="******************PROJECT:${project}******************"/>
         <echo message="******************AUTHOR:${author}******************"/>
        </target>
       <target name="clean" depends="info">
           <echo message="CLEAN PROJECT..."/>
           <delete dir="${user.dir}${classes}common"/>
           <delete dir="${user.dir}${classes}util"/>
           <delete dir="${user.dir}${classes}config"/>
           <delete dir="${user.dir}${classes}export"/>
           <delete dir="${user.dir}${classes}vo"/>
           <delete dir="${user.dir}${classes}com"/>
           <delete dir="${user.dir}${classes}
    czsc"/>
           <delete file="${user.dir}${classes}log4j.properties"/>
       </target>
        
       <target name="bulid.common" depends="clean">
               <echo message="COMPILE COMMON CLASS..."/>
           
               <mkdir dir="${user.dir}${classes}util"/>
            <javac includeantruntime="false" nowarn="on"   
                source="1.6" target="1.6" deprecation="true" debug="true"   
                encoding="UTF-8" classpathref="project.classpath" srcdir="${user.dir}srcutil" destdir="${user.dir}${classes}">
                <compilerarg line="-Xlint:unchecked" />
                <compilerarg line="-encoding UTF-8"/>
            </javac> 
        
            <mkdir dir="${user.dir}${classes}vo"/>
            <javac includeantruntime="false" nowarn="on"   
                source="1.6" target="1.6" deprecation="true" debug="true"   
                encoding="UTF-8" classpathref="project.classpath" srcdir="${user.dir}srcvo" destdir="${user.dir}${classes}">
                <compilerarg line="-Xlint:unchecked" />
                <compilerarg line="-encoding UTF-8"/>
            </javac>     
        
            <mkdir dir="${user.dir}${classes}common"/>
            <javac includeantruntime="false" nowarn="on"   
                           source="1.6" target="1.6" deprecation="true" debug="true"   
                           encoding="UTF-8" classpathref="project.classpath"  srcdir="${user.dir}srccommon" destdir="${user.dir}${classes}">
                       <compilerarg line="-Xlint:unchecked" />
                       <compilerarg line="-encoding UTF-8"/>
            </javac>  
       </target>
        
       <target name="build.proj" depends="bulid.common">
          <echo message="COMPILE PROJECT..."/>
             <mkdir dir="${user.dir}${classes}com"/>
             <javac includeantruntime="false" nowarn="on"   
                source="1.6" target="1.6" deprecation="true" debug="true"   
                encoding="UTF-8" classpathref="project.classpath" 
                   srcdir="${user.dir}srccom" destdir="${user.dir}${classes}">
                   <compilerarg line="-Xlint:unchecked" />
                   <compilerarg line="-encoding UTF-8"/>
          </javac>
              
            <mkdir dir="${user.dir}${classes}config"/>
            <copy todir="${user.dir}${classes}config">  
               <fileset dir="${user.dir}srcconfig">  
               </fileset>  
            </copy> 
        
               <mkdir dir="${user.dir}${classes}export"/>
            <javac includeantruntime="false" nowarn="on"   
                    source="1.6" target="1.6" deprecation="true" debug="true"   
                    encoding="UTF-8" classpathref="project.classpath"  srcdir="${user.dir}srcexport" destdir="${user.dir}${classes}">
                <compilerarg line="-Xlint:unchecked" />
                <compilerarg line="-encoding UTF-8"/>
            </javac>
               
            <mkdir dir="${user.dir}${classes}
    czsc"/>
            <javac includeantruntime="false" nowarn="on"   
                    source="1.6" target="1.6" deprecation="true" debug="true"   
                    encoding="UTF-8" classpathref="project.classpath"  srcdir="${user.dir}src
    czsc" destdir="${user.dir}${classes}">
                <compilerarg line="-Xlint:unchecked" />
                <compilerarg line="-encoding UTF-8"/>
            </javac>
       </target>
       <target name="copy.tomcat" depends="build.proj">
            <echo message="COPY FILE TO TOMCAT..."/>
            <copy todir="${tomcat.dir}webapps
    czsc">  
               <fileset dir="${user.dir}WebRoot">  
               </fileset>  
            </copy> 
      </target>
        
        <path id="project.classpath">  
            <fileset dir="${project.dir}${lib.dir}">  
                <include name="***.jar" />  
            </fileset>  
            <fileset dir="${tomcat.dir}/lib">  
                <include name="*.jar" />  
            </fileset>  
            <fileset dir="${ant.dir}">  
                <include name="***.jar" />  
            </fileset>
        </path>  
    </project>

    build.propertes文件中主要用来设置在build文件中引用的变量,以便重复利用。

    author=yookoo
    project=nczsc
    project.dir=D:\vs\050 u533Au57DFu75BEu63A7\095 u8111u5352u4E2Du7B5Bu67E5u7CFBu7EDF\05 u6E90u4EE3u7801\01nczsc
    classes=WebRoot\WEB-INF\classes
    lib.dir=WebRoot\WEB-INF\lib
    tomcat.dir=C:\Program Files\Apache Software Foundation\Tomcat 6.0
    ant.dir=C:\Program Files\Apache Software Foundation\apache-ant-1.9.7

    最后,将build文件加入ant中。

    然后点击双击ant中的build.proj启动程序。

  • 相关阅读:
    代码互改
    第一次个人编程作业
    第一次博客
    个人总结
    第三次个人作业--用例图设计
    第二次结对作业
    第一次结对作业
    记录浏览他人代码
    中文编程作业
    第一篇随笔
  • 原文地址:https://www.cnblogs.com/hoaprox/p/6393916.html
Copyright © 2011-2022 走看看