创建和删除目录
最基本的文件系统操作之一就是创建目录或文件夹。做这项工作的任务名为 mkdir,毫不奇怪,它非常类似于具有相同名称的 Windows 和 UNIX/Linux 命令。
<mkdir dir="archive/metals/zinc"/>
首先要注意 / 被用作目录分隔符,这是 UNIX 和 Linux 的惯例。您可能认为这不是很平台无关的,但是 Ant 知道如何处理它,并针对它运行所在的平台做恰当的事情,这与我们在前面定义基于位置的属性时所看到的方式相同。我们能够同样容易地使用 \,而不管平台是什么 ?? Ant 能够处理任一种形式,甚至能够处理两种形式的混合。
mkdir 任务的另一个有用特性是它的如下能力:在父目录还不存在时创建它们。考虑一下上面的清单,设想 archive 目录存在,但是 metals 目录不存在。如果使用底层平台的 mkdir 命令,您需要首先显式地创建 metals 目录,然后第二次调用 mkdir 命令来创建 zinc 目录。但是 Ant 任务比这更加智能,它能够一次性创建这两个目录。类似地,如果目标目录已经存在,mkdir 任务不会发出错误消息,而只是假设它的工作已经完成,从而什么也不做。
删除目录同样也很容易:
<delete dir="archive/metals/zinc"/>
这将删除指定的目录连同它包含的所有文件以及子目录。使用 file 属性而不是 dir 属性可以指定要删除的单个文件。
复制和移动文件及目录
在 Ant 中制作文件的一份拷贝很简单。例如:
<copy file="src/Test.java" tofile="src/TestCopy.java"/>
您还可以使用 move 来执行重命名操作而不是拷贝文件:
<move file="src/Test.java" tofile="src/TestCopy.java"/>
另一个常用的文件系统操作是将文件复制或移动到另一个目录。做这项工作的 Ant 语法同样也很简单:
<copy file="src/Test.java" todir="archive"/>
<move file="src/Test.java" todir="archive"/>
默认情况下,Ant 仅输出它执行的移动和复制操作的摘要,包括诸如已移动或复制的文件的数量等信息。如果想看到更详细的信息,包括涉及的文件名称等,您可以将 verbose 属性设置为true。
将一个目录里的文件 移动/剪切 到另一个目录中
<copy todir="dest" overwrite="true">
<fileset dir="src">
<excludes name="src/test/*.*"/>
<includes name="src/test/*.*"/>
<includes name="src/"
</fileset>
</copy>
<move todir="some/new/dir">
<fileset dir="my/src/dir">
<include name="**/*.jar"/>
<exclude name="**/ant.jar"/>
</fileset>
</move>
创建和解压缩 zip 及 tar 文件
在前一节中,我们看到了如何创建 JAR 文件。创建其他归档文件的过程几乎完全相同。下面是创建zip 文件的 Ant 任务:
<zip destfile="output.zip" basedir="output"/>
相同的语法也可用于创建 tar 文件。 还可以使用 GZip 和 BZip 任务来压缩文件。例如:
<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"/>
替换操作将在文件本身之内的适当位置进行。为了提供更详细的输出,可把 summary 属性设置为true。这将导致该任务输出找到和替换的标记字符串实例的数目。
分享到:
相关推荐
## ANT常用标签 1. **`<project>`**:这是Ant构建文件的根元素,用于定义整个构建的基本信息,如项目名称、版本以及默认目标。 2. **`<target>`**:定义一个可执行的任务或一系列任务,每个target都有一个唯一的...
3. **任务(Tasks)**:Ant的任务是执行具体操作,如`javac`用于编译Java源代码,`copy`用于复制文件,`jar`用于创建JAR包等。 4. **文件集(Filesets)**:文件集允许我们指定一组文件或目录,这些可以在任务中...
在实际项目中,自定义Ant任务可能涉及到更复杂的操作,例如与数据库交互、调用外部系统API或者处理特定的文件格式。开发者可以根据项目的具体需求,灵活地扩展Ant的功能。 通过自定义Ant任务,我们可以有效地提高...
本文将详细阐述Ant的一些常用操作及其核心概念,帮助你更好地理解和运用这个工具。 首先,我们来看一下`build.properties`和`build.xml`这两个文件。在Ant中,`build.properties`文件用于存储项目的配置属性,这些...
Apache Ant是一种广泛使用的Java构建工具,它通过XML配置文件来定义构建任务,使得开发者能够自动化地编译、打包、测试和部署Java项目。在Ant中,各种任务是通过标签来实现的,这些标签提供了构建过程中的不同功能。...
在描述中提到的博文链接虽然不可访问,但通常会详细解释如何配置Ant构建文件(build.xml)来执行这些任务。下面我们将以一个例子来说明如何使用Ant解压ZIP文件: ```xml ``` 在这个例子中,`<unzip>`任务...
3. **Ant常用任务** - **javac任务**:用于编译Java源代码,可以设置源和目标兼容性级别,以及处理错误和警告的方式。 - **copy任务**:用于复制文件或目录,可以进行过滤和重命名操作。 - **jar任务**:创建Java...
三.Ant的常用任务 四.利用Ant构建和部署Java工程 1.利用Ant的javac任务来编译java程序 2.使用Ant的java任务运行Java程序 3.使用Ant的jar任务生成jar文件 4.使用Ant的war任务打包J2EE Web项目 五.总结
总结来说,"常用的ANT蚂蚁脚本"涵盖了使用ANT配合XDoclet自动创建Hibernate映射文件,以及利用ANT自动化EJB项目的构建和部署流程。这些脚本对于理解ANT的工作原理,以及在实际开发环境中如何使用ANT进行项目管理具有...
4. **基本任务使用**:讲解如`javac`(编译Java源码)、`copy`(复制文件)和`jar`(创建JAR文件)等常用任务的使用。 5. **条件与选择**:介绍如何根据条件执行特定任务,如`if`、`unless`标签,以及`<available>`...
"Ant入门"可能是这个压缩包中的主要教程或者指南,它可能涵盖了Ant的基本概念、安装步骤、XML配置文件的结构、常用任务的使用方法以及如何编写自定义任务等内容。在Ant的学习过程中,了解这些基础知识是非常关键的。...
- 常用任务的详细介绍,如`<project>`, `<target>`, `<property>`, `<mkdir>`, `<copy>`, `<delete>`, `<javac>`, `<junit>`等 - 属性(properties)的使用,以及如何通过命令行传递自定义属性 - 如何处理依赖关系,...
然后,通过运行`ant`命令,Ant会解析build.xml文件并执行其中定义的任务。 总结一下,Ant是一个强大的构建工具,通过XML配置文件进行项目构建。`<jar>`任务是Ant中的一个重要组件,用于创建JAR文件。在使用Ant时,...
- **常用任务**: - `ant`:调用另一个ANT构建文件。 - `mkdir`:创建新目录。 - `delete`:删除文件或目录。 - `copy`:复制文件。 - `javac`:编译Java源代码。 - `jar`:打包Java类文件到JAR文件中。 - ...
通过理解并掌握Ant的基本概念和常用任务,开发者可以自定义构建流程,提高开发效率。无论是小型项目还是大型企业级应用,Ant都能提供有力的支持。通过不断学习和实践,你可以更好地利用Ant来优化你的项目构建。
3. **任务(Tasks)**:Ant的任务是执行特定操作的单元,如`javac`任务用于编译Java源代码,`copy`任务用于复制文件,`jar`任务用于创建JAR文件等。任务通常有多个属性,可以定制其行为。 4. **条件语句**:Ant提供...
总结来说,Ant是一个强大的Java构建工具,Zip是常用的文件压缩格式,而Jar是Java程序的打包方式。理解并熟练掌握这三个概念,对于Java开发人员来说至关重要,它们能够帮助我们更高效地管理和分发代码。
在Java开发中,Apache Ant是一个常用的自动化构建工具,它通过XML定义的构建文件(通常是`build.xml`)来管理项目的构建过程。Ant以其简单、灵活的特性,深受开发者喜爱。本教程将详细介绍如何使用Ant构建一个简单的...
Ant提供了一系列的任务来处理文件系统的操作,如文件复制、归档等。 ##### 4.2 模式匹配 在Ant中,可以使用通配符来指定文件或目录,这在处理大量文件时非常方便。 ##### 4.3 自定义任务 Ant允许开发者编写Java类...