ant的一些核心任务;
1.
basename
Sets a property to the last element of a specified path in an effort to determine a file's name without directory structure
2.
dirname
Assigns a file's directory path to a property
3.
input
Displays a message and reads a line of input from the console, allowing for user input during the build process
4.
import
Allows the use of other Ant files
5.
record
Runs a listener that records the logging output of the build process to a file
6.
sequential
A container task that can contain other Ant tasks and run them in sequence
7.
rmic
Invokes the rmic compiler
8.
subant
Runs Ant within all subdirectories of the project directory
9.
tstamp
Sets time-based properties to the current time
10.
Ant has some additional Ant-specific properties:
ant.file
Contains the absolute path of the build file
ant.java.version
Contains the JVM version Ant is using (can hold only 1.1, 1.2, 1.3, 1.4 and [as of Ant 1.6] 1.5)
ant.project.name
Holds the name of the project that is executing (set with the name attribute of project)
ant.version
Contains the version of Ant running
basedir
Holds the absolute path of the project's base directory (set with the basedir attribute of project)
=======================
摘抄自 java development with ant
ant-contrlib的一些task,觉得可能有用的
1.
propertycopy,感觉有点像赋值,但是不是简单的赋值
<target name="propertycopy">
<property name="X" value="Y"/>
<property name="Y" value="Z"/>
<propertycopy name="A" from="${X}"/>
<echo message="A = ${A}"/>
</target>
The value of ${X} is “Y”. The from attribute of <propertycopy> refers to an Ant
property name, “Y” in this example. The value of the property Y is “Z”, so the output
is “A = Z”. This is a much nicer alternative than using the refid tricks.
2.osfamily 和操作系统相关的
<target name="osfamily">
<osfamily property="os.family" />
<echo message="O/S family is ${os.family}"/>
<property file="${os.family}.properties"/>
</target>
Executing this target on a Windows 2000 machine would load windows.properties.
Loading properties based on operating system family, or by hostname, enables build
files to adapt easily to their operating environment.
3.
Using if/then/else logic 逻辑判断,觉得会用到
<target name="if">
<if>
<equals arg1="${foo}" arg2="bar" />
<then>
<echo message="The value of property foo is bar" />
</then>
<else>
<echo message="The value of property foo is not bar" />
</else>
</if>
</target>
4.
Multiple value switching 开关控制
<target name="switch">
<switch value="${foo}">
<case value="bar">
<echo message="The value of property foo is bar" />
</case>
<case value="baz">
<echo message="The value of property foo is baz" />
</case>
<default>
<echo message="The value of property foo is not sensible" />
</default>
</switch>
</target>
5.
Catching task exceptions 使用try catch,不知道用处有多大
<target name="trycatch">
<trycatch property="exception.message"
reference="exception.ref">
<try>
<fail>Oops!</fail>
</try>
<catch>
<echo>Caught</echo>
</catch>
<finally>
<echo>Finally</echo>
</finally>
</trycatch>
<echo>As property: ${exception.message}</echo>
<property name="exception.value" refid="exception.ref" />
<echo>From reference: ${exception.value}</echo>
</target>
.....
Executing this target produces this output:
trycatch:
[trycatch] Caught exception: Oops!
[echo] Caught
[echo] Finally
[echo] As property: Oops!
[echo] From reference: C:\AntBook\Sections\Applying\tasks\
ant-contrib.xml:72: Oops!
BUILD SUCCESSFUL
6.
Using explicit iteration ,我一般使用for, 不知道为什么,这个应该还有点用处的吧
<target name="for-each">
<foreach list="1,2,3" target="loop" param="var"
delimiter=",">
<fileset dir="."/>
</foreach>
</target>
<target name="loop">
<echo message="var = ${var}"/>
</target>
...
out put is
for-each:
loop:
[echo] var = 1
loop:
[echo] var = 2
loop:
[echo] var = 3
loop:
[echo] var = C:\AntBook\Sections\Applying\tasks\ant-contrib.xml
loop:
[echo] var = C:\AntBook\Sections\Applying\tasks\build\build.properties
.
.
The target is invoked for each iteration by using the underlying mechanism that the
<antcall> task uses, which means that the dependencies of the target are reevaluated
each iteration.
分享到:
- 2008-04-16 21:38
- 浏览 18725
- 评论(2)
- 论坛回复 / 浏览 (2 / 3721)
- 查看更多
相关推荐
"Ant ant ant antant ant ant antant ant ant ant" 这个描述可能是在强调Ant在项目构建过程中的重复性和不可或缺性,暗示着它在工程中的频繁使用和核心地位。 Ant的设计理念是“一切都是XML”,它通过XML格式的构建...
在实际项目中,自定义Ant任务可能涉及到更复杂的操作,例如与数据库交互、调用外部系统API或者处理特定的文件格式。开发者可以根据项目的具体需求,灵活地扩展Ant的功能。 通过自定义Ant任务,我们可以有效地提高...
Apache Ant 是一个Java库和命令行工具,其任务是驱动构建过程。它是Java开发中的一个关键工具,尤其在自动化编译、打包、测试等任务上。Ant 的工作原理基于XML格式的构建文件,称为build.xml,其中包含了各种任务和...
在`build.xml`或`build1.xml`这样的ANT脚本中,可能会包含使用XDoclet的任务定义,例如`<xdoclet>`任务,来执行这一步骤。 2. **部署EJB项目**: EJB(Enterprise JavaBeans)是Java EE平台的核心组件,用于构建可...
该程序为Ant的扩展任务,在拷贝文本格式的文件的同时替换文件中的Ant表达式,类似于 ${property.name},属性值来自于Ant脚本加载的属性文件,如果没有属性文件中没有定义相关属性,那么保留原来的表达式;...
本文将详细阐述Ant的一些常用操作及其核心概念,帮助你更好地理解和运用这个工具。 首先,我们来看一下`build.properties`和`build.xml`这两个文件。在Ant中,`build.properties`文件用于存储项目的配置属性,这些...
一些常见的Ant任务包括`<copy>`(复制文件或目录)、`<javac>`(编译Java源代码)、`<mkdir>`(创建目录)和`<jar>`(创建JAR文件)等。 让我们以`<javac>`任务为例,它是用于编译Java源代码的关键任务。你可以配置...
一些常用到的电子书籍-Ant
### ant自定义任务详解 在构建自动化工具领域,Apache Ant是一个强大的开源软件项目,用于编译、测试和部署Java应用程序。Ant使用XML来定义构建过程,使得自动化构建流程变得直观和可配置。然而,Ant的强大之处不仅...
3. **依赖管理**:虽然Ant本身不提供依赖管理功能,但可以通过调用Maven或Ivy等外部工具,实现对项目依赖的自动下载和管理。 4. **测试执行**:`junit`任务可以执行JUnit测试用例,生成测试报告。`surefire`任务则...
3. **Ant常用任务** - **javac任务**:用于编译Java源代码,可以设置源和目标兼容性级别,以及处理错误和警告的方式。 - **copy任务**:用于复制文件或目录,可以进行过滤和重命名操作。 - **jar任务**:创建Java...
- 这个版本可能包含了一些特定的修复和改进,具体的详细信息需要查看"readme.txt"文件来了解。 3. **Windows上的Ant** - Ant可以在多种操作系统上运行,包括Windows。"apache-ant-1.6.5-bin"文件夹内包含了所有...
ant ant下载 ant配置ant ant下载 ant配置ant ant下载 ant配置
在Ant的世界里,自定义任务是扩展其功能的关键方式之一,允许开发者根据特定项目需求创建自己的构建步骤。Ant是Apache软件基金会的一个项目,它是一个基于Java的构建工具,广泛用于管理Java项目的构建、编译、测试和...
下面将详细介绍一些Apache Ant中常用的标签。 1. `<project>`:这是Ant构建文件的根元素,定义了整个构建项目的属性,如项目名称、版本、默认目标等。例如: ```xml ``` 2. `<target>`:定义了一个可执行的...
在描述中提到的博客链接虽然没有提供具体内容,但我们可以假设博主分享了一些关于如何理解和使用`build.xml`文件的经验或者示例。通常,一个`build.xml`文件会包含以下几个关键部分: 1. **属性(Properties)**:...
这个“ant工具ant资源包”很可能是Apache Ant的一个版本,具体为1.8.3。Ant以XML为基础来描述项目构建的规则和依赖关系,这使得构建过程在不同的环境中具有可移植性。 在Ant中,主要的概念有以下几点: 1. **构建...
三.Ant的常用任务 四.利用Ant构建和部署Java工程 1.利用Ant的javac任务来编译java程序 2.使用Ant的java任务运行Java程序 3.使用Ant的jar任务生成jar文件 4.使用Ant的war任务打包J2EE Web项目 五.总结
"Ant入门"可能是这个压缩包中的主要教程或者指南,它可能涵盖了Ant的基本概念、安装步骤、XML配置文件的结构、常用任务的使用方法以及如何编写自定义任务等内容。在Ant的学习过程中,了解这些基础知识是非常关键的。...
这个版本发布于2002年,相对于当前的版本来说可能较为陈旧,但在当时是一个广泛使用的版本,因为它引入了许多新特性并修复了一些已知问题。".zip"表明这是一个ZIP压缩文件,通常用于打包和分发软件。 描述"ant_...