`

Java构建工具之Ant入门

ant 
阅读更多

Ant是一种基于Java的build工具。理论上来说,它有些类似于(Unix)C中的make ,但没有make的缺陷。

http://ant.apache.org/

版本:apache-ant-1.8.4


1、输出信息

<!-- 输出信息 -->
<echo>ANT_HOME:${ant.home}</echo>
<echo message="ANT_VERSION:${ant.version}"/>



2、时间戳

<!-- 时间戳 -->
<tstamp />
<echo message="${DSTAMP}"/>



3、使用properties文件

<property file="build.properties" />

<!-- 使用build.properties -->
<echo message="${test.key1}"/>



4、定义变量

<!-- property定义 -->
<property name="test.property1" value="propertyA"/>

<echo message="${test.property1}"/>



5、导入其他Build文件

<include file="included.xml"/>

<!-- included.xml -->
<echo message="${included}"/>

......

<import file="imported.xml"/>

<!-- imported.xml -->
<echo message="${imported}"/>



6、自定义Task

package com.rensanning.ant;

import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.Task;

public class MyTask extends Task { 
	
	private String name; 
	
	private String country;

	@Override  
    public void execute() throws BuildException {  
		System.out.println(name + " from " + country);
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getCountry() {
		return country;
	}

	public void setCountry(String country) {
		this.country = country;
	}
	
}

 

<taskdef name="mt" classname="com.rensanning.ant.MyTask" classpath="bin"/>

<!-- 自定义Task -->
<mt name="rensanning" country="china"/>



7、创建文件夹

<!-- 创建文件夹 -->
<mkdir dir="C:\ant\test11\10" />
<mkdir dir="C:\ant\test11\11" />



8、删除文件夹

<!-- 删除文件夹 -->
<delete dir="C:\ant\test11\11" />



9、移动文件夹

<!-- 移动文件夹 -->
<mkdir dir="C:\ant\folder\move" />
<move todir="C:\ant\folder\move">
   <fileset dir="test/folder/move"/>
</move>



10、拷贝文件夹

<!-- 拷贝文件夹 -->
<mkdir dir="C:\ant\folder\copy" />
<copy todir="C:\ant\folder\copy">
	<fileset dir="test/folder/copy">
		<include name="**/*.java" />
		<exclude name="**/*Test.java" />
	</fileset>
</copy>



11、删除文件

<!-- 删除文件 -->
<delete file="test/file/delete/deletefile.txt" />



12、拷贝文件

<!-- 拷贝文件 -->
<mkdir dir="C:\ant\file\copy" />
<copy todir="C:\ant\file\copy">
	<fileset dir="">
		<include name="**/*.java" />
		<exclude name="**/*.class" />
	</fileset>
</copy>



13、文件重命名

<!-- 文件重命名 -->
<move file="test/file/copy/C2.java" tofile="C:\ant\file\copy\RC2.java"/>



14、修改文件中的某个值

<!-- 修改文件中的某个值 -->
<replace file="C:\ant\file\copy\RC2.java" token="args" value="param"/>



15、压缩文件

<!-- 压缩文件 -->
<mkdir dir="C:\ant\file\zip" />
<zip destfile="C:\ant\file\zip\manual.zip"
     basedir="test/folder"
     includes="**/*.java"
     excludes="**/*Test.java"/>



16、解压文件

<!-- 解压文件 -->
<mkdir dir="C:\ant\file\unzip" />
<unzip src="C:\ant\file\zip\manual.zip" dest="C:\ant\file\unzip"/>



17、移动文件

<!-- 移动文件 -->
<mkdir dir="C:\ant\file\move" />
<move file="test/file/move/movefile.txt" todir="C:\ant\file\move"/>



18、设置classpath

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



19、编译类

  
<!-- 编译类javac -->
<javac destdir="./bin" 
	encoding="UTF-8" 
	deprecation="on" 
	debug="off" 
	fork="true" 
	memoryMaximumSize="256m">
    <src path="src"/>
    <src path="src2"/>
	<classpath refid="cp" />
</javac>



20、运行类

<!-- 运行类java -->
<java classname="com.rensanning.ant.T" classpath="bin"/>



21、打包jar

<!-- 打包jar -->
<mkdir dir="C:\ant\jar" />
<jar jarfile="C:\ant\jar\test.jar">
    <fileset dir="./bin">
        <include name="**/*" />
    </fileset>
</jar>



22、打包war

<!-- 打包war -->
<mkdir dir="C:\ant\war" />
<war destfile="C:\ant\war\myapp.war" webxml="test/war/web.xml">
  <fileset dir="test/war/html"/>
  <fileset dir="test/war/jsp"/>
  <lib dir="./lib">
    <exclude name="servlet-api.jar"/>
  </lib>
  <classes dir="./bin"/>
  <zipfileset dir="test/war/images" prefix="images"/>
</war>



23、CVS相关

<!-- CVS相关 -->
<cvspass cvsroot="${cvsroot}" password="${cvs.password}" passfile="${cvs.passfile}"/>
<cvs cvsroot="${cvsroot}" command="checkout" cvsrsh="ssh" package="myproject" dest="${basedir}" passfile="${cvs.passfile}"/>

<cvs cvsRoot=":pserver:${cvs.user}:${cvs.password}@${cvs.server}:${cvs.reppath}" 
	package="${cvs.module}" 
	tag="${tag60}" 
	dest="${checkoutdir}" />



24、执行外部文件

<!-- 执行外部文件 -->
<exec executable="cmd">
    <arg value="/c"/>
    <arg value="ant.bat"/>
    <arg value="-p"/>
</exec>



25、SSH

<!-- SSH -->
<sshexec host="" username="" password="" trust="true" command=""/>



26、SCP

<!-- SCP -->
<scp todir="root:123456@192.168.0.2:/usr/local/tomcat/webapps/" trust="true">
	<fileset dir="dir" id="id">
	    <include name="include"/>
	    <exclude name="exclude"/>
	</fileset>
</scp>



27、文件同步

<!-- 文件同步 -->
<sync todir="site">
  <fileset dir="generated-site"/>
</sync>



28、转换文件格式

<!-- 转换文件格式 -->
<native2ascii encoding="EUCJIS" src="srcdir" dest="srcdir" includes="**/*.eucjis" ext=".java"/>



29、发送邮件

<!-- 发送邮件 -->
<mail mailhost="smtp.myisp.com" mailport="1025" subject="Test build">
	<from address="me@myisp.com"/>
	<to address="all@xyz.com"/>
	<message>The {buildname} nightly build has completed</message>
	<fileset dir="dist">
	<includes name="**/*.zip"/>
	</fileset>
</mail>
 
分享到:
评论

相关推荐

    Ant入门-ant入门pdf

    《Ant入门》是一本专为初学者设计的电子书,主要涵盖了Apache Ant这一构建工具的基础知识和使用方法。Ant是Java开发中广泛使用的自动化构建工具,由Apache软件基金会开发,其设计目标是简化项目构建过程,使开发者...

    Ant入门Ant入门Ant入门

    ### Ant入门知识点详解 #### 一、Ant简介与特点 **Ant**,全称为Another Neat Tool,是一款基于Java的构建工具,由James Duncan Davidson创建并命名。它主要用于将源代码和其他输入文件转换成可执行文件或可安装的...

    Ant 入门资料(完整版)

    Ant是Apache软件基金会下的一个Java构建工具,它在软件开发领域扮演着自动化构建和部署的角色。这个"Ant入门资料(完整版)"包含了丰富的学习资源,帮助初学者快速掌握Ant的基本概念、用法以及实际应用。 《JUnit...

    java Ant入门教程

    随着 Java 技术的发展和应用越来越广泛,Ant 也逐渐成为了 Java 项目构建的标准之一。 #### 二、Ant 的功能与优势 Ant 的主要功能包括但不限于: 1. **跨平台支持**:由于 Ant 是用 Java 编写的,因此它可以轻松...

    ant入门小实例练习

    Ant是Apache软件基金会的一个开源项目,它是一个Java构建工具,主要负责自动化构建Java应用程序,包括编译、打包、测试和部署等任务。在Java开发环境中,Ant替代了传统的Makefile,提供了一种跨平台的解决方案。 在...

    初学者ant入门级小实例

    Ant是Apache软件基金会下的一个Java构建工具,它以XML格式定义构建过程,使得构建脚本具有可读性强、易于维护的特点。本实例旨在为初学者提供一个Ant的基础入门指南,帮助理解并掌握其基本操作。 Ant的核心概念是...

    Apache Ant入门教程

    与之相比,Ant 使用 Java 类进行跨平台的构建,这使得同一个构建文件可以在任何支持 Java 的平台上运行,这是 Ant 的一大亮点。 Ant 的核心特性包括其简洁的设计和易于扩展的能力。它允许开发者通过定义构建文件...

    ant入门编写例子,非常简单实效哦

    标题“ant入门编写例子,非常简单实效哦”指的是这篇内容将向初学者展示如何使用Ant进行基本的项目构建。Ant的入门通常包括创建build.xml文件,设置项目属性,定义任务,以及引入依赖等步骤。这个例子可能是为了帮助...

    Java Development with Ant.pdf

    Ant是一种开源的Java构建工具,用于自动化软件构建过程,包括编译、测试、打包、部署等任务。它通过XML文件定义构建逻辑,提供了一种简单而强大的方式来管理构建流程。Ant最初由James Duncan Davidson于1998年创建,...

    ant 使用指南-ant入门

    Ant是Apache软件基金会的一个开放源码项目,是一个基于Java的构建工具,它的设计目标是简化Java项目的构建过程。Ant以其XML格式的构建文件(build.xml)而著名,它允许开发者定义构建任务,这些任务可以包括编译源...

    ant学习资料大全。Ant是一种基于Java的Build工具。

    Ant,全名Apache Ant,是Java社区中广泛使用的构建工具,它的主要作用是自动化Java项目的构建过程,包括编译源代码、打包、测试和部署等。Ant的设计理念是跨平台性和可扩展性,这两个特性使其在众多构建工具中...

    Ant入门教程,使用Ant自动生成JAR文件

    **Ant入门教程——使用Ant自动生成JAR文件** Apache Ant是一个Java库和命令行工具,其任务是驱动构建过程。它是Java开发中的一个重要工具,尤其在自动化构建、编译、测试和部署应用程序时。本教程将带你深入了解Ant...

Global site tag (gtag.js) - Google Analytics