Ant手册

原创 2004年07月06日 17:33:00

访问以下网址可以获取几乎所有的信息.

http://ant.apache.org/

<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

一个范例build.xml

<?xml version="1.0"?>

<project default="dist" name="First Ant Project">

       <description>A ant test project.</description>

       <property name="message" value="Now show the simplest ant project..."/>

       <property name="srcDir" location="src"/>

       <property name="distDir" location="dist"/>

       <property name="buildDir" location="build"/>     

       <property name="libDir" location="lib"/>     

 

       <property name="jardir" location="jardir"/>

 

    <target name="init">

              <echo message="${message}"/>

              <tstamp/>

              <mkdir dir="${distDir}"/>

              <mkdir dir="${buildDir}"/>

              <mkdir dir="${jardir}"/>

    </target>

       <target name="compile" depends="init">

              <javac srcdir="${srcDir}" destdir="${buildDir}">

                     <classpath>

                            <fileset dir="${libDir}">

                                   <include name="*.jar"/>

                            </fileset>

                     </classpath>

              </javac>

       </target>

      

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

       <jar jarfile="${distDir}/package-${DSTAMP}.jar" basedir="${buildDir}">

         <manifest>

           <attribute name="Built-By" value="${user.name}"/>

           <attribute name="Main-Class" value="package.Main"/>

         </manifest>

       </jar>      

    </target>

      

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

              <zip zipfile="${distDir}/output.zip" basedir="${buildDir}"/>

       </target>

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

              <delete dir="${buildDir}"/>

       </target>

 

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

              <copy todir="jardir">

                     <fileset dir="${distDir}">

                            <include name="*.jar"/>

                     </fileset>

              </copy>

       </target>

</project>

 

echo 任务 —— 简单地输出给定的消息。

<echo message="Message=${message}"/>

 

复制文件

<copy file="src/Test.java" tofile="src/TestCopy.java"/>

<copy file="src/Test.java" todir="archive"/>

 

移动文件

<move file="src/Test.java" tofile="src/TestCopy.java"/>

<move file="src/Test.java" todir="archive"/>

 

压缩 zip 及 tar 文件

<zip destfile="output.zip" basedir="output"/><!--在1.4中,应当把destfile改成zipfile.-->

tar与此相同

<gzip src="output.tar" zipfile="output.tar.gz"/>

解压缩

<unzip src="output.tar.gz" dest="extractDir"/>

还可以包括 overwrite 属性来控制覆盖行为。默认设置是覆盖与正在被提取的归档文件中的条目相匹配的所有现有文件。相关的任务名称是 untar、unjar、gunzip 和 bunzip2

 

替换文件中的标记

replace 任务,它执行文件中的查找和替换操作。token 属性指定要查找的字符串,value 属性指定一个新的字符串,查找到的标记字符串的所有实例都被替换为这个新的字符串。

<replace file="input.txt" token="old" value="new"/>

 

CVS

<?xml version="1.0"?>

<project name="CVS Extract" default="extract" basedir=".">

<property name="cvsRoot" value=":pserver:username:password@192.9.150.11:/cvsroot"/>

 

<target name="extract">

    <cvs cvsRoot="${cvsRoot}" package="cmbc"                dest="${basedir}"/>

</target>

</project>

 

cvs 任务的主要属性是 cvsRoot,它是对 CVS 知识库的完整引用,包括连接方法和用户详细信息。这个参数的格式如下:

[:method:][[user][:password]@]hostname[:[port]]/path/to/repository

packagerespository的名字,也就是项目的名称.

当然,首先需要设置cvs命令的路径,在环境变量中更改path.

 

Email

<?xml version="1.0"?>

<project name="ant mail" default="mail" basedir=".">

       <target name="mail">

              <mail mailhost="192.9.200.16" encoding="plain" mailport="25" subject="Can u get it?" from="gelh@icss.com.cn" tolist="gelh@icss.com.cn">

              </mail>

       </target>

</project>

需要mail.jaractivation.jar

注意一定要设置encoding属性

 

自定义任务

<taskdef name="filesorter"

        classname="FileSorter

       classpath="."/>

 

 

 

 

 

 

 

 

 

Cvs用法:(待收录)

首先login

cvs -d :pserver:cvsroot@192.9.150.11:/cvsroot login

然后checkout

cvs :pserver:cvsroot@192.9.150.11:/cvsroot checkout cmbc

 

Creating executable JARs
Creating an executable JAR is easy. You begin by placing all your application code in a single directory. Let's say the main class in your application is
com.mycompany.myapp.Sample. You want to create a JAR file that contains the application code and identifies the main class. To do this, create a file called manifest somewhere (not in your application directory), and add the following line to it:

 

Main-Class: com.mycompany.myapp.Sample

Then, create the JAR file like this:

 

jar cmf manifest ExecutableJar.jar application-dir

That's all there is to it -- now the JAR file ExecutableJar.jar can be executed using java -jar.

An executable JAR must reference all the other dependent JARs it requires through the Class-Path header of the manifest file. The environment variable CLASSPATH and any class path specified on the command line is ignored by the JVM if the -jar option is used.

Launching executable JARs
Now that we've packaged our application into an executable JAR called ExecutableJar.jar, we can launch the application directly from the file using the following command:

 

java -jar ExecutableJar.jar

 

ant 中文手册

还不是很全,只有基本的内容:  1 Ant是什么?  Apache Ant 是一个基于 Java的生成工具。  生成工具在软件开发中用来将源代码和其他输入文件转换为可执行文件的形式(也有可能转换...
  • s464036801
  • s464036801
  • 2013年05月20日 15:24
  • 516

Maven和Ant简介以及两者的区别

Maven 一.Maven简介 Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。 目前,绝大多数开发人员都把 Ant 当作 Java...
  • tianyazaiheruan
  • tianyazaiheruan
  • 2013年10月10日 08:54
  • 18926

Ant打包生成zip

代码总览
  • itlwc
  • itlwc
  • 2014年04月16日 17:47
  • 4475

ant 各种标签属性参数介绍

1 没有指定任何参数时,Ant会在当前目录下查询build.xml文件2 可以指定执行一个或多个target。当省略target时,Ant使用标签的default属性所指定的target3 编写bui...
  • s646575997
  • s646575997
  • 2016年07月28日 11:29
  • 1820

如何使用ANT在命令行进行编译和测试

hibernate教材中最初有ANT的使用说明,使用ANT的好处,目前看来,可以少输入字符串 1.配置环境变量 path ANT_HOME等 2.为你打算编译的工程提供一个build.xml文件 3....
  • charliefromkansas
  • charliefromkansas
  • 2016年04月28日 15:02
  • 2361

Win7下Ant的安装与配置

Apache Ant is a Java library and command-line tool that help building software. 下载安装 到
  • yang382197207
  • yang382197207
  • 2013年08月22日 15:47
  • 13462

ant的condition使用总结

is true is false
  • u010142437
  • u010142437
  • 2014年05月26日 11:37
  • 1903

Ant 条件判断 if

Ant的IF命令用法。
  • xzknet
  • xzknet
  • 2016年03月29日 14:53
  • 4759

apache ant 的安装与使用

团队协作式的开发项目时,svn和git起到管理代码的作用,而我们需要的是一个可以编译好可以发布的产品,这时候就需要有一个规范的编译工具了,由于开发人员所使用的环境各有不同,比如开发java项目时,不同...
  • MEdwardM
  • MEdwardM
  • 2016年11月01日 11:21
  • 2219

ant扩展之if,for

Ant-contrib是使用Ant编写脚本最重要的补充。当使用Ant编写一些较为复杂的逻辑功能,比如循环和流程判断时,自然希望 Ant 能支持这种编程能力。然而 Ant 核心任务中并没有提供  任务,...
  • wobendiankun
  • wobendiankun
  • 2014年09月10日 23:36
  • 1178
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Ant手册
举报原因:
原因补充:

(最多只允许输入30个字)