`
seawavenews
  • 浏览: 231669 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

jakarta-ant的使用(java编译工具)jakarta-ant的使用(java编译工具)

阅读更多
一:介绍:
    ant 是jakarta的一个编译工具,如果你了解linux/Unix下的makefile你就很容易
     理解ant的用途了。ant最适合你使用UltraEdit(EditPlus)写java程序,然后你使用ant去编译,同时javadoc ,生成一 个jar,war,实现文件的copy都可以在build.xml通过不同的tager去实现,还是很方便的一个东东强烈推荐是使用。
二:下载
    你可以从下面的地址下载到ant,目前版本:1.41
    http://jakarta.apache.org/builds/jakarta-ant/release/v1.4.1/bin/
    
三:安装
a:)Windows
    1:解压你下载的文件,会有一个jakarta-ant(版本号的)目录产生,把他改名为ant
    2:copy ant 目录到你需要的位置。
    3:在环境变量中添加:ANT_HOME=ant的安装目录,path中加$ANT_HOME$\in;注意你同时必须已经安装了jdk,并添加了JAVA_HOME的环境变量,同时早path中加了$JAVA_HOME$\in;

b:)Linux/Unix
    1:解压你下载的文件,会有一个jakarta-ant(版本号的)目录产生,把他改名为ant
    2:copy ant 目录到你需要的位置。
    3: 在环境变量中添加:ANT_HOME=ant的安装目录,path中加$ANT_HOME$\in;注意你同时必须已经安装了jdk,并添加了 JAVA_HOME的环境变量,同时早path中加了$JAVA_HOME$\in;实现修改环境变量你需要修改.bash_profile文件。
    如下
    ANT_HOME=/usr/local/ant
    JAVA_HOME=/usr/local/jdk
    PATH=$PATH:$HOME/bin:/usr/local/ant/bin:/usr/local/jdk/bin

    export PATH ANT_HOME JAVA_HOME

四:编写build.xml
build.xml相当Linux下的makefile,具体的实现都在build.xml中实现。
我给给例子说明一下。
build.xml
================================================================
<project name="bingo" default="build" basedir="../.." >
    <!--basedir设定工作目录-->
  <property name="version" value="1.0"/>

  <!-- The base directory relative to which most targets are built -->
  <property name="base" value="."/>
 
  <!-- The directory where source files are stored. -->
  <property name="java.source.dir" value="bingo/src"/>
  <!--代码保存路径-->
  <!-- Destination for compiled files -->
  <property name="javac.dest" value="bingo/classes"/>
    <!--class保存路径-->
  <!-- Destination for generated jar files -->
  <property name="jar.dest" value="bingo/jar"/>
  <!--jar文件保存路径-->
  <!-- Destination for documentation files generated or not -->
  <property name="docs" value="bingo/docs"/>
  <!--javadoc文件保存路径-->
  <!-- Destination for javadoc generated files -->
  <property name="javadoc.dest" value="bingo/docs"/>

  <!-- The stem where most log4j source code is located. -->
  <property name="stem" value="com/bingo"/>

  <property name="base-files" value="include"/>
  
  <!-- Original manifest.mf file before filtering. -->
  <property name="manifest.src" value="bingo/build/manifest.mf"/>
      
  <!-- Some targets needs a more precise stem. -->
  <property name="BSTEM" value="${java.source.dir}/${stem}"/>
  
   <property name="tomcat.dir" value="c:/Apache/Tomcat"/>
  
  <property name="webapp.dir" value="${tomcat.dir}/webapps/ROOT/WEB-INF/classes"/>
  
  <!--List all Package used in this project    -->
  <property name="PackageList" value="
               com.bingo,
             com.bingo.database,
             com.bingo.dbocw,
             com.bingo.util,
             com.bingo.taglibs.jndi,
             com.bingo.finance.database,
             com.bingo.finance.entity,
             com.bingo.finance.manager"
  />
  <!--你的project中所有的包-->
  <!-- List all jar or file used in this project -->
  <property name="classpath" value="${classpath};
                      ${base-files}/tomcat/servlet.jar;
                      ${base-files}/tomcat/webserver.jar;
                      ${base-files}/log4j/log4j.jar;
                      ${base-files}/log4j/log4j-core.jar"
                      
      />
  <!--你需要用到的包-->
  <target name="init">
    <tstamp />
  </target>

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

    <mkdir dir="${javac.dest}" />
    <javac srcdir="${java.source.dir}"
       destdir="${javac.dest}"
       classpath="${classpath}"
       debug="on"/>            
       
  </target>
  <!-- ================================================================= -->
  <!-- Copy  class files to tomcat dir.                                      -->
  <!-- ================================================================= -->
   <target name="copy" depends="build">
    <copy todir="${webapp.dir}/com/bingo">
        <fileset dir="${javac.dest}/com/bingo">
            <include name="*.class"/>
        </fileset>
    </copy>    
    <copy todir="${webapp.dir}/com/bingo/util">
        <fileset dir="${javac.dest}/com/bingo/util">
            <include name="*.class"/>
        </fileset>
    </copy>    
    <copy todir="${webapp.dir}/com/bingo/database">
        <fileset dir="${javac.dest}/com/bingo/database">
            <include name="*.class"/>
        </fileset>
    </copy>    
    <copy todir="${webapp.dir}/com/bingo/dbocw">
        <fileset dir="${javac.dest}/com/bingo/dbocw">
            <include name="*.class"/>
        </fileset>
    </copy>    
    <copy todir="${webapp.dir}/com/bingo/finance/database">
        <fileset dir="${javac.dest}/com/bingo/finance/database">
            <include name="*.class"/>
        </fileset>
    </copy>    
    <copy todir="${webapp.dir}/com/bingo/finance/entity">
        <fileset dir="${javac.dest}/com/bingo/finance/entity">
            <include name="*.class"/>
        </fileset>
    </copy>    
    <copy todir="${webapp.dir}/com/bingo/finance/manager">
        <fileset dir="${javac.dest}/com/bingo/finance/manager">
            <include name="*.class"/>
        </fileset>
    </copy>    
  </target>



  <!-- ================================================================= -->
  <!-- Remove all generated (compiled) class files.                      -->
  <!-- ================================================================= -->
  <target name="clean" depends="init">
    <delete dir="${javac.dest}/" />
  </target>
  
  <!-- ================================================================= -->
  <!-- Remove all backup  files.                                         -->
  <!-- ================================================================= -->
  <target name="delete" depends="init">
    <delete >
        <fileset dir="${java.source.dir}/com/bingo">
            <include name="*.bak"/>
        </fileset>
    </delete>
    <delete >
        <fileset dir="${java.source.dir}/com/bingo/util">
            <include name="*.bak"/>
        </fileset>
    </delete>
    <delete >
        <fileset dir="${java.source.dir}/com/bingo/database">
            <include name="*.bak"/>
        </fileset>
    </delete>
    <delete >
        <fileset dir="${java.source.dir}/com/bingo/finance/database">
            <include name="*.bak"/>
        </fileset>
    </delete>
    <delete >
        <fileset dir="${java.source.dir}/com/bingo/finance/entity">
            <include name="*.bak"/>
        </fileset>
    </delete>
    <delete >
        <fileset dir="${java.source.dir}/com/bingo/finance/manager">
            <include name="*.bak"/>
        </fileset>
    </delete>
  </target>
  


  <!-- ================================================================= -->
  <!-- Remove the temporary manifest file, actual work is done in the    -->
  <!-- dependencies.                                                     -->
  <!-- ================================================================= -->  
  
  <target name="prejar" depends="build">
    <mkdir dir="${jar.dest}"/>    
    <filter token="version" value="${version}" />
    <copy file="${manifest.src}" tofile="${jar.dest}/manifest.mf" 
          filtering="true"/>
  </target>
  
  <!-- ================================================================= -->
  <!-- This target Create    bingo.jar                                     -->
  <!-- ================================================================= -->
  <target name="jar" depends="prejar">
    <delete file="${jar.dest}/bingo.jar"/>
    <jar jarfile="${jar.dest}/bingo.jar" basedir="${javac.dest}"
        manifest="${jar.dest}/manifest.mf"    
    />
  </target>
  
  <!-- ================================================================= -->
  <!-- This target builds the javadoc files.                             -->
  <!-- ================================================================= -->
  <target name="javadoc" depends="build,init">
    <mkdir dir="${javadoc.dest}" />
    <javadoc sourcepath="${java.source.dir}" 
               destdir="${javadoc.dest}" 
               classpath="${classpath}"
               packagenames="${PackageList}"
               version="true"
               protected="true"
              author="true"
               use="true"           
               windowtitle="Bingo Free Java Code Version ${version}" 
               header="Bingo Free Java Code${version}"
     />            
  </target>
</project> 
分享到:
评论

相关推荐

    jakarta-ant-optional的jar包

    Ant是一个广泛使用的Java构建工具,它允许开发者通过XML格式的构建文件来编译、打包、测试和部署Java项目。这个"jakarta-ant-optional"的jar包在Eclipse集成开发环境中扮演着重要角色,为用户提供更丰富的构建功能。...

    hello-ant 项目 ,学习ant工具的build file. java

    Ant是一种流行的Java库和命令行工具,用于驱动构建、测试和部署Java应用程序。它是用纯Java编写的,可以在任何安装了JDK的环境中运行。Ant通过XML文件(`build.xml`)来定义构建过程,这种文件被称为构建脚本。在这些...

    ant-jakarta-regexp-1.6.1.jar.zip

    在Java开发领域,Apache Ant是一个广泛使用的构建工具,它基于XML来定义项目构建过程。而Jakarta Regexp是Ant中的一个关键组件,用于处理正则表达式相关任务。本文将深入探讨"ant-jakarta-regexp-1.6.1.jar.zip"这个...

    ant-jakarta-oro-1.6.1.jar.zip

    Apache Ant是一个广泛使用的Java构建工具,类似于Unix的make,但基于Java,它允许开发者通过XML描述构建过程,使得构建任务自动化。 Jakarta ORO,全称为Open Repository for Java Text Processing,是一个用于Java...

    ant-jakarta-bcel-1.6.1.jar.zip

    Apache Ant是一个广泛使用的构建自动化工具,它基于XML来定义构建过程,能够执行编译、测试、打包和部署等任务。在Java开发中,Ant通常用于创建、组装和管理软件项目的生命周期。它的核心是一个名为"build.xml"的...

    jakarta-oro-2.0.8.zip

    这个项目在Java社区中被广泛使用,为开发者提供了一套强大的文本匹配和搜索工具。"jakarta-oro-2.0.8.zip" 是该项目的版本2.0.8的压缩包文件,包含了完整的源代码和可能的库文件。 正则表达式(Regular Expression...

    ant-jakarta-log4j-1.6.jar.zip

    在“ant-jakarta-log4j-1.6.jar.zip”中,包含的“ant-jakarta-log4j-1.6.jar”文件很可能是一个定制的Ant任务,用于集成Log4j到构建过程中,确保日志记录功能的正确配置和使用。 接下来,我们转向Log4j。Log4j是...

    ant-jakarta-regexp.jar.zip

    在Java开发过程中,自动化构建工具起着至关重要的作用,其中Apache Ant是广泛使用的工具之一。而"ant-jakarta-regexp.jar.zip"这个压缩包,正是与Apache Ant相关的扩展库,用于支持正则表达式处理。本文将深入探讨这...

    ant-jakarta-bcel-1.6.jar.zip

    《Ant-Jakarta-BCEL-1.6.jar.zip:Java构建工具与字节码工程库的深度解析》 在Java开发领域,Ant是一款广泛应用的自动化构建工具,它以XML为基础,提供了一种灵活的方式来编译、打包、测试和部署应用程序。Jakarta ...

    ant-apache-bcel.jar.zip

    Apache Ant,一个Java库和命令行工具,其任务是驱动构建过程。它通过XML描述构建过程,使得构建过程可移植且易于维护。Ant的核心理念是“一切都是文件”,这使得它能够处理任何类型的任务,包括编译、打包、测试以及...

    apache-ant-1.9.3-src.tar

    在Java 中应用是平台无关性的,当然不会用平台相关的make脚本来完成这些批处理任务了,ANT本身就是这样一个流程脚本引擎,用于自动化调用程序完成项目的编译,打包,测试等。除了基于JAVA是平台无关的外,脚本的格式...

    apache-ant-1.10.3

    Apache Ant,是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发。由Apache软件基金会所提供。 简介 用户群:大多数的Java设计都被用于管理大量信息流,例如纽约州就...

    apache-ant-1.9.6

    Apache Ant,是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发。由Apache软件基金会所提供。 简介 用户群:大多数的Java设计都被用于管理大量信息流,例如纽约州就...

    apache-ant-1.9.7.rar

    在描述的场景中,"ant自动打包"指的是使用Ant将Java项目编译、打包成可部署的形式,比如JAR或WAR文件。自动打包可以包括以下步骤: 1. **编译源代码**:使用`&lt;javac&gt;`任务,指定源代码目录和目标目录,Ant会自动...

    ant使用

    Ant,全称Apache Ant,是一款基于Java的构建工具,旨在简化软件构建过程,提高自动化程度。它以其跨平台性和灵活性著称,尤其适合Java项目的构建。与传统的构建工具如Make相比,Ant提供了更为丰富的功能和更简单的...

    Ant打包编译部署工具学习笔记2(附件中含有测试项目)

    Ant是一个开源的Java构建工具,它最初由Jakarta项目开发,现在是Apache软件基金会的一部分。Ant的核心理念是“一切都是任务”(Everything is a Task),它通过XML文件(通常称为build.xml)来描述构建过程。在这个...

    apache-ant-1.8.0RC1-bin

    Ant是apache软件基金会jakarta项目中的一个子项目,由于是基于java编写的,因此具有很好的跨平台性。Ant由一些内置任务(task)和可选择的任务组成(当然你还可以编写自己的任务),使用Make时,你需要写一个...

    ant打包工具

    Ant是Apache软件基金会Jakarta项目下的一个构建工具,它以其灵活性和可扩展性在Java开发领域中被广泛应用。Ant基于XML,它的主要任务是编译源代码、创建JAR文件、执行测试、部署应用程序等。本文将深入探讨Ant的工作...

    ANT手册 如何使用ANT进行构建

    ANT 是一款广泛应用于 Java 项目的构建工具,其全称为 Apache Ant。它采用 XML 来定义构建过程,使得构建脚本清晰且易于维护。与传统的 Make 工具相比,ANT 具有良好的跨平台性,并支持通过添加自定义 Java 类来扩展...

Global site tag (gtag.js) - Google Analytics