`
rensanning
  • 浏览: 3552731 次
  • 性别: Icon_minigender_1
  • 来自: 大连
博客专栏
Efef1dba-f7dd-3931-8a61-8e1c76c3e39f
使用Titanium Mo...
浏览量:38219
Bbab2146-6e1d-3c50-acd6-c8bae29e307d
Cordova 3.x入门...
浏览量:607619
C08766e7-8a33-3f9b-9155-654af05c3484
常用Java开源Libra...
浏览量:682790
77063fb3-0ee7-3bfa-9c72-2a0234ebf83e
搭建 CentOS 6 服...
浏览量:89539
E40e5e76-1f3b-398e-b6a6-dc9cfbb38156
Spring Boot 入...
浏览量:402152
Abe39461-b089-344f-99fa-cdfbddea0e18
基于Spring Secu...
浏览量:69761
66a41a70-fdf0-3dc9-aa31-19b7e8b24672
MQTT入门
浏览量:91835
社区版块
存档分类
最新评论

Java构建工具之Ant

    博客分类:
  • Java
阅读更多
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>


分享到:
评论

相关推荐

    Java.构建工具.ANT

    【Java 构建工具 ANT】是Java开发中的一个重要组成部分,它是Apache软件基金会开发的一个开源构建工具,主要用于自动化Java项目的构建、编译、测试和部署等任务。Ant以其灵活性和可扩展性著称,通过XML配置文件...

    Ant基于Java的构建工具.ppt

    Ant基于Java的构建工具.ppt

    Java的Build工具Ant.doc

    Java的构建工具Ant是一个强大的自动化构建工具,主要应用于Java项目,其名称源于“蚁工”的概念,寓意着像蚂蚁一样勤劳地执行各种构建任务。Ant的设计理念是简单、灵活和可扩展,它弥补了传统构建工具如make在跨平台...

    【构建工具Ant环境搭建】

    【构建工具Ant环境搭建】 Ant是Apache软件基金会的Jakarta项目中的一个核心工具,它是一个基于Java的构建工具,主要用于自动化构建Java项目。Ant以其XML为基础的构建文件(build.xml)而闻名,它允许开发者定义任务...

    java编程式启动ant

    Apache Ant是一个开源的构建工具,其设计灵感来源于Make,但使用XML来描述构建过程和依赖关系。它内置了多种任务,可以处理Java项目中的常见操作,并允许用户自定义任务。Ant的核心概念是项目(Project)、目标...

    ant工具和ant教程

    Ant是Apache软件基金会下的一个Java项目,它是一个构建工具,主要用于管理Java项目的构建过程。Ant以其XML为基础的构建文件(build.xml)而著名,这些文件详细描述了如何编译、打包和测试Java应用程序。Ant的核心...

    ant一键构建工具

    Ant是Apache软件基金会开发的一款Java语言的构建工具,它的出现是为了替代Make等传统构建工具,更好地适应Java项目的需求。在Java开发中,Ant以其XML格式的构建文件(build.xml)来定义构建过程,使得构建过程更为...

    ant工具可以构建web应用

    ant工具可以构建web应用,ant工具可以构建web应用ant工具可以构建web应用ant工具可以构建web应用ant工具可以构建web应用ant工具可以构建web应用ant工具可以构建web应用ant工具可以构建web应用ant工具可以构建web应用

    ANT构建的一个问题

    Apache Ant是一个Java库和命令行工具,其任务是驱动构建过程。它通过XML定义的构建文件来描述构建步骤,使得开发者可以自动化编译、打包、测试等任务。 在描述中提到的“NULL”可能是指在尝试解决这个问题时,遇到...

    Java 代码调用ANT

    Apache Ant 是一个流行的 Java 平台上的构建工具,它提供了一种灵活的方式来自动化构建过程。通过 XML 文件定义构建逻辑,Ant 能够执行编译、测试、打包等多种任务。本文将详细介绍如何使用 Java 代码来调用 Apache ...

    java安装程序,利用Ant构建打包工具

    Java安装程序的创建通常涉及到多个步骤,其中包括使用自动化构建工具如Apache Ant来简化流程。Apache Ant是一个基于XML的构建工具,它允许开发者定义构建过程,包括编译、打包、测试等任务,使得整个过程可重复且...

    ant.rar java的架包ant

    《Ant——Java开发中的构建工具》 Ant是Java开发领域中的一款强大且广泛应用的构建工具,它由Apache软件基金会开发并维护。Ant以其XML为基础的构建文件(build.xml)著称,该文件定义了项目的构建过程,包括编译、...

    JAVA_Ant详细介绍与应用

    Ant是一个Apache基金会下的跨平台的构件工具,它可以实现项目的自动构建和部署等功能。在本文中,主要让读者熟悉怎样将Ant应用到Java项目中,让它简化构建和部署操作。 一.安装与配置 二.Ant的关键元素 三.Ant的...

    ant 构建环境使用

    Apache Ant是一种广泛使用的Java构建工具,它以XML为基础来描述构建过程,使得构建脚本具有良好的可读性和可维护性。Ant是Apache软件基金会Jakarta项目的一部分,它为Java项目提供了一种自动化构建的解决方案。 在...

    ant-javacard-master_antjava_Will_

    【标题】"ant-javacard-master_antjava_Will_" 暗示了这是一个与Java Card开发相关的项目,使用Apache Ant作为构建工具。Java Card是一种在智能卡或类似的微控制器设备上运行Java应用程序的技术,而Ant是Apache软件...

    java版本构建工具大全

    java,版本构建,ant,mvn,gradle

    java的Ant打包工具

    Java的Ant打包工具是开发过程中不可或缺的一部分,尤其在构建、部署和自动化任务管理方面发挥着重要作用。Ant是由Apache软件基金会开发的一个开源项目,其设计灵感来源于Make,但使用XML来描述构建过程,使得构建...

Global site tag (gtag.js) - Google Analytics