CSDN博客

img lwqadmin

ant发怒了

发表于2004/9/16 13:15:00  1293人阅读

January 01, 2004

"蚂蚁怒了"

ant_logo_large.gif读Steve Loughran的"Ant in Anger"一文的笔记而已。^_^
Steve建议的顶级目标的名称及内容。
目标的名字 内容
Build 构建应用系统
Test 运行JUnit测试
Clean 清空输出目录
Deploy 将jar或war等文件装载到执行系统中
Publish 输出源代码和二进制文件到发布站点
Fetch 从CVS树得到最新源代码
docs/javadocs 输出文档文件
All 执行clean, fetch,build,test,dos/javadocs, deploy
Main 默认的构建过程
内建目标的名称 内容
Init 初始化特性和执行其他初始化任务,读取个性化特性文件
Init-debug 初始化调试特性
Init-release 初始化发布特性
Compile 执行实际编译
link/jar 建立jar文件或等价文件
Staging 在将应用程序转移到产品站点前执行预部署过程及测试
简单项目的开发目录结构
目录名 内容
bin 存放普通的二进制文件和脚本文件
build 用以存放构建结果的目录树,由ant创建且可以被"clean"目标清空
dist 用以存放可发布的开发结果,由ant创建且可以被"clean"目标清空
doc 手写文档
lib 存放在构建应用系统时需要装入的java库
src 存放java原码,目录的层次结构要符合包命名的要求。

ANT任务(ant tasks)一览

档案类任务
Audit/Coverage Tasks
编译类任务
部署类任务
文档类任务
EJB类任务
执行类任务
文件类任务
Java2扩展类任务
日志类任务
邮件类任务
其它杂类任务
.NET类任务
预编译类任务
属性类类任务
远程类任务
SCM(软件控制管理)类任务
测试类
Visual Age for Java类任务 Tasks

档案类任务[Back to top]
任务名称 描述
BUnzip2

解压缩用GZip 或 BZip2打包的文件.

BZip2

用GZip 或 BZip2 算法将一些文件打包。这个任务不作依赖性检查,总会产生一个输出文件。

Cab

生成 Microsoft CAB 格式的文件. 它同Jar or Zip任务那样运行. 这个任务在windows平台上调用一个外部工具 cabarc (M$提供的), 因此这个工具必须在搜索路径上可以找到。

Ear

An extension of the Jar task with special treatment for files that should end up in an Enterprise Application archive.

GUnzip

解压缩一个GZip文件.

GZip

将一些文件用GZip打包.

Jar

将一些文件用Jar打包.

Jlink

不赞成使用此任务. 请使用 JarZip 任务的 zipfilesetzipgroupfileset 属性代替.

Manifest

生成一个清单文件.

Rpm

加载rpm 程序来构建一个linux安装文件. 这个任务目前只运行在linux以及支持rpm的unix平台上。

SignJar

利用命令行工具javasign来对一个zip或jar文件进行数字签名。

Tar

生成一个tar文件.

Unjar

解压缩一个jar文件.

Untar

展开一个tar文件中包含的文件.

Unwar

解压缩一个war文件.

Unzip

解压缩一个zip文件.

War

An extension of the Jar task with special treatment for files that should end up in the WEB-INF/lib, WEB-INF/classes, or WEB-INF directories of the Web Application Archive.

Zip

生成一个zip文件.

Audit/Coverage Tasks[Back to top]
任务名称 描述
JDepend

Invokes the JDepend parser. This parser "traverses a set of Java source-file directories and generates design-quality metrics for each Java package".

JProbe

These tasks run the tools from the JProbe suite. This task was written using JProbe Suite Server Side 3.0.

MMetrics

Computes the metrics of a set of Java source files, using the Metamata Metrics/WebGain Quality Analyzer source-code analyzer, and writes the results to an XML file.

Maudit

Performs static analysis on a set of Java source-code and byte-code files, using the Metamata Metrics/WebGain Quality Analyzer source-code analyzer.

编译类任务[Back to top]
任务名称 描述
Depend

Determines which classfiles are out-of-date with respect to their source, removing the classfiles of any other classes that depend on the out-of-date classes, forcing the re-compile of the removed classfiles. Typically used in conjunction with the Javac task.

Javac

Compiles the specified source file(s) within the running (Ant) VM, or in another VM if the fork attribute is specified.

JspC

Runs the JSP compiler. It can be used to precompile JSP pages for fast initial invocation of JSP pages, deployment on a server without the full JDK installed, or simply to syntax-check the pages without deploying them. The Javac task can be used to compile the generated Java source. (For Weblogic JSP compiles, see the Wljspc task.)

NetRexxC

Compiles a NetRexx source tree within the running (Ant) VM.

Rmic

Runs the rmic compiler on the specified file(s).

Wljspc

Compiles JSP pages using Weblogic's JSP compiler, weblogic.jspc. (For non-Weblogic JSP compiles, see the JspC task.

Deployment Tasks[Back to top]
任务名称 描述
ServerDeploy

Task to run a "hot" deployment tool for vendor-specific J2EE server.

Documentation Tasks[Back to top]
任务名称 描述
Javadoc/Javadoc2

Generates code documentation using the javadoc tool. The Javadoc2 task is deprecated; use the Javadoc task instead.

Stylebook

Executes the Apache Stylebook documentation generator. Unlike the command-line version of this tool, all three arguments are required to run the Stylebook task.

EJB Tasks[Back to top]
任务名称 描述
EJB Tasks

(See the documentation describing the EJB tasks.)

Execution Tasks[Back to top]
任务名称 描述
Ant

Runs Ant on a supplied buildfile, optionally passing properties (with possibly new values). This task can be used to build sub-projects.

AntCall

Runs another target within the same buildfile, optionally passing properties (with possibly new values).

Apply/ExecOn

Executes a system command. When the os attribute is specified, the command is only executed when Ant is run on one of the specified operating systems.

Dependset

This task compares a set of source files with a set of target files. If any of the source files is newer than any of the target files, all the target files are removed.

Exec

Executes a system command. When the os attribute is specified, the command is only executed when Ant is run on one of the specified operating systems.

Java

Executes a Java class within the running (Ant) VM, or in another VM if the fork attribute is specified.

Parallel

A container task that can contain other Ant tasks. Each nested task specified within the <parallel> tag will be executed in its own thread.

Sequential

A container task that can contain other Ant tasks. The nested tasks are simply executed in sequence. Its primary use is to support the sequential execution of a subset of tasks within the <parallel> tag.

Sleep

A task for suspending execution for a specified period of time. Useful when a build or deployment process requires an interval between tasks.

Subant

Calls a given target for all defined sub-builds. This is an extension of ant for bulk project execution.

Waitfor

Blocks execution until a set of specified conditions become true. This task is intended to be used with the Parallel task to synchronize a set of processes.

File Tasks[Back to top]
任务名称 描述
Attrib

Changes the permissions and/or attributes of a file or all files inside the specified directories. Currently, it has effect only under Windows.

Checksum

Generates a checksum for a file or set of files. This task can also be used to perform checksum verifications.

Chgrp

Changes the group ownership of a file or all files inside the specified directories. Currently, it has effect only under Unix.

Chmod

Changes the permissions of a file or all files inside the specified directories. Currently, it has effect only under Unix. The permissions are also UNIX style, like the arguments for the chmod command.

Chown

Changes the owner of a file or all files inside the specified directories. Currently, it has effect only under Unix.

Concat

Concatenates multiple files into a single one or to Ant's logging system.

Copy

Copies a file or Fileset to a new file or directory.

Copydir

Deprecated. Use the Copy task instead.

Copyfile

Deprecated. Use the Copy task instead.

Delete

Deletes either a single file, all files and sub-directories in a specified directory, or a set of files specified by one or more FileSets.

Deltree

Deprecated. Use the Delete task instead.

Filter

Sets a token filter for this project, or reads multiple token filters from a specified file and sets these as filters. Token filters are used by all tasks that perform file-copying operations.

FixCRLF

Modifies a file to add or remove tabs, carriage returns, linefeeds, and EOF characters.

Get

Gets a file from a URL.

Mkdir

Creates a directory. Non-existent parent directories are created, when necessary.

Move

Moves a file to a new file or directory, or a set(s) of file(s) to a new directory.

Patch

Applies a "diff" file to originals.

Rename

Deprecated. Use the Move task instead.

RenameExtensions

Deprecated. Use the Move task with a glob mapper instead.

Replace

Replace is a directory-based task for replacing the occurrence of a given string with another string in selected file.

ReplaceRegExp

Directory-based task for replacing the occurrence of a given regular expression with a substitution pattern in a file or set of files.

Sync

Synchronize two directory trees.

Tempfile

Generates a name for a new temporary file and sets the specified property to that name.

Touch

Changes the modification time of a file and possibly creates it at the same time.

Java2 Extensions Tasks[Back to top]
任务名称 描述
Jarlib-available

Check whether an extension is present in a FileSet or an ExtensionSet. If the extension is present, the specified property is set.

Jarlib-display

Display the "Optional Package" and "Package Specification" information contained within the specified jars.

Jarlib-manifest

Task to generate a manifest that declares all the dependencies in manifest. The dependencies are determined by looking in the specified path and searching for Extension/"Optional Package" specifications in the manifests of the jars.

Jarlib-resolve

Try to locate a jar to satisfy an extension, and place the location of the jar into the specified property.

Logging Tasks[Back to top]
任务名称 描述
Record

Runs a listener that records the logging output of the build-process events to a file. Several recorders can exist at the same time. Each recorder is associated with a file.

Mail Tasks[Back to top]
任务名称 描述
Mail

A task to send SMTP email.

MimeMail

Deprecated. Use the Mail task instead.

Miscellaneous Tasks[Back to top]
任务名称 描述
Defaultexcludes

Modify the list of default exclude patterns from within your build file.

Echo

Echoes text to System.out or to a file.

Fail

Exits the current build by throwing a BuildException, optionally printing additional information.

GenKey

Generates a key in keystore.

Input

Allows user interaction during the build process by displaying a message and reading a line of input from the console.

Script

Executes a script in a Apache BSF-supported language.

Sound

Plays a sound file at the end of the build, according to whether the build failed or succeeded.

Splash

Displays a splash screen.

Sql

Executes a series of SQL statements via JDBC to a database. Statements can either be read in from a text file using the src attribute, or from between the enclosing SQL tags.

Taskdef

Adds a task definition to the current project, such that this new task can be used in the current project.

TStamp

Sets the DSTAMP, TSTAMP, and TODAY properties in the current project, based on the current date and time.

Typedef

Adds a data-type definition to the current project, such that this new type can be used in the current project.

XmlValidate

Checks that XML files are valid (or only well-formed). This task uses the XML parser that is currently used by Ant by default, but any SAX1/2 parser can be specified, if needed.

.NET Tasks[Back to top]
任务名称 描述
.NET Tasks

(See the documentation describing the .NET tasks.)

Pre-process Tasks[Back to top]
任务名称 描述
ANTLR

Invokes the ANTLR Translator generator on a grammar file.

AntStructure

Generates a DTD for Ant buildfiles that contains information about all tasks currently known to Ant.

IContract

Instruments Java classes using the iContract DBC preprocessor. This task can generate a properties file for iControl, a graphical user interface that lets you turn on/off assertions.

Import

Import another build file and potentially override targets in it with targets of your own.

JavaCC

Invokes the JavaCC compiler-compiler on a grammar file.

Javah

Generates JNI headers from a Java class.

JJDoc

Invokes the JJDoc documentation generator for the JavaCC compiler-compiler. JJDoc takes a JavaCC parser specification and produces documentation for the BNF grammar. It can operate in three modes, determined by command line options. This task only invokes JJDoc if the grammar file is newer than the generated BNF grammar documentation.

JJTree

Invokes the JJTree preprocessor for the JavaCC compiler-compiler. It inserts parse-tree building actions at various places in the JavaCC source that it generates. The output of JJTree is run through JavaCC to create the parser. This task only invokes JJTree if the grammar file is newer than the generated JavaCC file.

Macrodef

Define a new task as a macro built-up upon other tasks.

MParse

Invokes the Metamata MParse compiler-compiler on a grammar file.

Native2Ascii

Converts files from native encodings to ASCII with escaped Unicode. A common usage is to convert source files maintained in a native operating system encoding to ASCII, prior to compilation.

Presetdef

Define a new task by instrumenting an existing task with default values for attributes or child elements.

Translate

Identifies keys in files, delimited by special tokens, and translates them with values read from resource bundles.

Xslt/Style

Processes a set of documents via XSLT.

Property Tasks[Back to top]
任务名称 描述
Available

Sets a property if a specified file, directory, class in the classpath, or JVM system resource is available at runtime.

Basename

Sets a property to the last element of a specified path.

BuildNumber

Task that can be used to track build numbers.

Condition

Sets a property if a certain condition holds true - this is a generalization of Available and Uptodate.

Dirname

Sets a property to the value of the specified file up to, but not including, the last path element.

Echoproperties

Lists the current properties.

LoadFile

Loads a file into a property.

LoadProperties

Load a file's contents as Ant properties. This task is equivalent to using <property file="..."/> except that it supports nested <filterchain> elements, and it cannot be specified outside a target.

PathConvert

Converts a nested path, path reference, filelist reference, or fileset reference to the form usable on a specified platform and/or to a list of items separated by the specified separator and stores the result in the specified property.

Property

Sets a property (by name and value), or set of properties (from a file or resource) in the project.

PropertyFile

Creates or modifies property files. Useful when wanting to make unattended modifications to configuration files for application servers and applications. Typically used for things such as automatically generating a build number and saving it to a build properties file, or doing date manipulation.

Uptodate

Sets a property if a given target file is newer than a set of source files.

Whichresource

Find a class or resource.

XmlProperty

Loads property values from a well-formed XML file.

Remote Tasks[Back to top]
任务名称 描述
FTP

Implements a basic FTP client that can send, receive, list, and delete files, and create directories.

Rexec

Task to automate a remote rexec session.

Scp

Copy files to or from a remote server using SSH.

setproxy

Sets Java's web proxy properties, so that tasks and code run in the same JVM can have through-the-firewall access to remote web sites.

Sshexec

Execute a command on a remote server using SSH.

Telnet

Task to automate a remote telnet session. This task uses nested <read> and <write> tags to indicate strings to wait for and specify text to send.

SCM(软件控制管理)任务[Back to top]
任务名称 描述
Cvs

处理从某个 CVS 仓库中取得的那些包/模块.

CvsChangeLog

将某个 CVS 仓库中记录的变化情况生成一个xml格式的报告.

CVSPass

Adds entries to a .cvspass file. Adding entries to this file has the same affect as a cvs login command.

CvsTagDiff

Generates an XML-formatted report file of the changes between two tags or dates recorded in a CVS repository.

ClearCase

Tasks to perform the ClearCase cleartool checkin, checkout, uncheckout, update, lock, unlock, mklbtype, rmtype, mklabel, and mkbl commands.

Continuus/Synergy

Tasks to perform the Continuus ccmcheckin, ccmcheckout, ccmcheckintask, ccmreconfigure, and ccmcreateTask commands.

Microsoft Visual SourceSafe

Tasks to perform the Visual SourceSafe vssget, vsslabel, vsshistory, vsscheckin, vsscheckout, vssadd, vsscp, and vsscreate commands.

Perforce

Tasks to perform the Perforce p4sync, p4change, p4edit, p4submit, p4have, p4label, p4counter, p4reopen, p4revert, and p4add commands.

Pvcs

Allows the user extract the latest edition of the source code from a PVCS repository.

SourceOffSite

Tasks to perform the SourceOffSite sosget, soslabel, soscheckin, and soscheckout commands.

StarTeam

Tasks to perform the StarTeam stcheckout, stcheckin, stlabel, and stlist commands. The Starteam task is deprecated; use STCheckout instead.

测试类任务
任务名称 描述
Junit

运行遵循Junit 测试框架的测试. 这个任务已经在JUnit 3.0 至 JUnit 3.7上测试通过; 它不能在低于 JUnit 3.0的版本上工作.

JunitReport

Junit任务产生的一个个xml文件合并起来, 然后对合并生成的文件使用一个样式单(stylesheet)来提供一个可读的测试结果报告.

Test

运行遵循 org.apache.testlet 框架的单元测试.

Visual Age for Java任务
任务名称 描述
Visual Age for Java Tasks

(参见Visual Age for Java任务的文档.)

Posted by Hilton at January 1, 2004 05:33 PM | TrackBack
0 0

相关博文

我的热门文章

img
取 消
img