`
421728862
  • 浏览: 8490 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
社区版块
存档分类
最新评论

java Ant 用法

    博客分类:
  • java
 
阅读更多

ant环境变量的配置

1.  apache官网上下载ant应用插件

2. 在环境变量中添加ANT_HOME变量,变量值为ant的解压路径

 

如当前的 ANT_HOME  D:\Program Files\Java\apache-ant-1.9.7-bin



 
path种添加 ant中的bin目录

Path    %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;%ANT_HOME%\bin

 

3.  测试ant环境是否安装成功

 

运行一个docs窗口,在命令符中输入   ant


ant标签用法

1.基本格式

<?xml version="1.0"?>

<project default="init">

<target name="init">

</target>

</project>

Antxml格式的,顶级 project 元素需要包含一个 default 属性,如果在 Ant 被调用时没有指定目标,这个属性将指定要执行的目标。然后需要使用 target 元素来定义该目标本身

2.标签用法

  1description 注释

<?xml version="1.0"?>

<project default="init" name="Project">

<description>

A simple project introducing the use of descriptive tags in Ant build files.

</description>

<!-- XML comments can also be used -->

<target name="init" description="Initialize Argon database">

<!-- perform initialization steps here -->

</target>

</project>

Ant 定义了它自己的description 元素和 description 属性,它们可用于提供更结构化的注释。也可以使用xml种默认的注释字符

        

2property  定义变量

<property name="metal“   value="beryllium"/>

 定义了一个名称为 metal的变量,变量的值为beryllium,在下面的文档中通过 ${metal}来使用变量。如:<property name="metal-database" value="${metal}.db"/>

 

3location

           Ant location 属性专门设计用于以平台无关的方式包含文件系统路径。像下面这样使用 location 来代替value

<property name="database-file"  location="archive/databases/${metal}.db"/>

        Location的作用与value一样,${database-file}值为archive/databases/${metal}.db.

区别是Location用于路径,例如,/ \)的平台来说,这样可能在跨越不同平台时不会导致问题

 

4depends  确定目标的执行顺序

<target name="init"/>

<target name="preprocess" depends="init"/>

<target name="compile" depends="init,preprocess"/>

<target name="package" depends="compile"/>

如果让 Ant 完成 compile 步骤,它将判断出需要首先执行 init preprocess 这两个目标。init 目标不依赖其他任何目标,因此它将首先被执行。然后 Ant 检查 preprocesstarget,发现它依赖 init 目标;由于已经执行了后者,Ant 不会再次执行它,因而开始执行 preprocess 目标。最后可以执行 compile 任务本身。

 

5javac  编译源代码

     <javac srcdir="src"/>

这个标签寻找 src 目录中以 .java 为扩展名的所有文件,并对它们调用 javac 编译器,从而在相同的目录中生成类文件。当然,将类文件放在一个单独的目录结构中通常会更清晰;可以通过添加destdir 属性来让 Ant 做到这点

classpath:等价于 javac -classpath 选项。

debug="true":指示编译器应该带调试信息编译源文件。

 

javac 任务的一个重要特点在于,它仅编译那些它认为需要编译的源文件。如果某个类文件已经存在,并且对应的源文件自从该类文件生成以来还没有改变过,那么该源文件就不会被重新编译。

javac任务的输出显示了实际被编译的源文件的数目。

这种行为刻画了 Ant 的许多任务的特点:如果某个任务能够确定所请求的操作不需要执行,那么该操作就会被跳过。

 

6jar  创建jar文件

         <jar destfile="package.jar" basedir="classes"/>

这将创建一个名为 package.jar JAR 文件,并把 classes 目录中的所有文件添加到其中(JAR文件能够包含任意类型的文件,而不只是类文件)。此处没有指定清单文件,因此 Ant 将提供一个基本的清单文件

manifest 属性允许指定一个用作该 JAR 文件的清单的文件。清单文件的内容还可以使用 manifest任务在生成文件中指定。这个任务能够向文件系统写入一个清单文件,或者能够实际嵌套在 jar 之内,以便一次性地创建清单文件和 JAR 文件。

 

<jar destfile="package.jar" basedir="classes">

<manifest>

<attribute name="Built-By" value="${user.name}"/>

<attribute name="Main-class" value="package.Main"/>

</manifest>

</jar>

 

6tstamp    时间戳

           DSTAMP    设置为当前日期,默认格式为yyyymmdd    如:20031217

          TSTAMP    设置为当前时间,默认格式为hhmm           如:1603

           TODAY     设置为当前日期,带完整的月份                     如:20031217

                   例:

                   <target  name=”dist”  depends=””>

                            <tstamp></tstamp>

                            <jar destfile=”${dist}/package-${DSTAMP}.jar”  basedir=”${compile}”>

                                     <manifest>

                                               <attribute  name = “Built-By”  value=”${user.name}”/>

                                               <attribute  name = “Main-Class”  value=”com.test.Test”/>

                                     </manifest>

</jar>

                   </target>

 

7mkdir     创建目录

  <mkdir dir="archive/metals/zinc"/>

mkdir 任务的另一个有用特性是它的如下能力:在父目录还不存在时创建它们

如果目标目录已经存在,mkdir 任务不会发出错误消息,而只是假设它的工作已经完成,从而什么也不做

8delete     删除目录目录

这将删除指定的目录连同它包含的所有文件以及子目录。使用 file 属性而不是 dir 属性可以指定要删除的单个文件

9copy     复制和移动文件及目录

           <copy file="src/Test.java" tofile="src/TestCopy.java"/>

10move     执行重命名操作而不是拷贝文件

                   <move file="src/Test.java" tofile="src/TestCopy.java"/>

默认情况下,Ant 仅输出它执行的移动和复制操作的摘要,包括诸如已移动或复制的文件的数量等信息。如果想看到更详细的信息,包括涉及的文件名称等,可以将 verbose 属性设置为true

11zip     创建压缩文件

<zip destfile="output.zip" basedir="output"/>

12unzip   解压缩文件

           <unzip src="output.tar.gz" dest="extractDir"/>

还可以包括 overwrite 属性来控制覆盖行为。默认设置是覆盖与正在被提取的归档文件中的条目相匹配的所有现有文件

 

13replace   它执行文件中的查找和替换操作

<replace file="input.txt" token="old" value="new"/>

token 属性指定要查找的字符串,value 属性指定一个新的字符串,查找到的标记字符串的所有实例都被替换为这个新的字符串

 

替换操作将在文件本身之内的适当位置进行。为了提供更详细的输出,可把 summary 属性设置为true。这将导致该任务输出找到和替换的标记字符串实例的数目

 

14)匹配模式

可以对目录执行模式匹配。例如,模式 src*/*.java 将匹配带 src 前缀的任何目录中的所有Java 文件。

还有另一种模式结构:**,它匹配任意数量的目录。例如,模式 **/*.java 将匹配当前目录结构下的所有 Java 文件。

<copy todir="archive">

<fileset dir="src">

<include name="*.java"/>

</fileset>

</copy>

 

fileset 默认情况下包含指定 src 目录下的所有文件,因此为了仅选择 Java 文件,我们对模式使用一个 include 元素。类似地,我们可以对另一个模式添加一个 exclude 元素,从而潜在地排除include 指定的匹配项。甚至可以指定多个include exclude 元素;这样将得到一组文件和目录,它们包含 include 模式的所有匹配项的并集,但排除了 exclude 模式的所有匹配项

 

使用自定义任务扩展ANT

         1、在下载的ant找到ant.jar包导入到项目工程下

2、创建类 com.Test   继承org.apache.tools.ant.Task,重写excuet方法;

3、标签中有两个属性 filetofile。在类test中创建filetofile两个属性,并建立相应的getset方法,在excute中进行功能实现

4、标签中的用法:

         <taskdef name="myTesk"  classname=" com.Test "    classpath="."/>

         <target name=” targetname”>

                   <myTest  file=”value1”   tofile=”value2”/>

</target>

                  Classpath的值为  Test.class 的存放CLASSPATH

 

  • 大小: 41.3 KB
  • 大小: 60 KB
分享到:
评论

相关推荐

    java ant集成1.9.5版本

    1. **ant.jar**:这是Ant的核心库,包含了所有用于执行构建任务的类和方法。通过这个JAR文件,你可以运行Ant命令行工具,执行build.xml文件中的构建脚本。 2. **ant-launcher.jar**:这个JAR文件包含了启动Ant的...

    ant java ant

    本篇文章将深入探讨Ant的原理、使用方法以及与Java的紧密关系。 Ant是由Apache软件基金会开发的一款开源构建工具,主要用于Java项目的构建、编译、测试和部署。它的设计灵感来源于Make,但采用了XML格式来定义构建...

    JAVA ANT包发布工具包

    1. **任务(Tasks)**:ANT的工作单元,类似于其他编程语言中的函数或方法。例如,`javac`任务用于编译Java源代码,`jar`任务用于创建JAR文件,`copy`任务用于复制文件等。 2. **属性(Properties)**:在ANT中,...

    Java调用Ant API用法收集

    首先,要使用Java调用Ant API,你需要在项目中引入Apache Ant的库。通常,这通过添加以下Maven依赖完成: ```xml &lt;groupId&gt;org.apache.ant &lt;artifactId&gt;ant &lt;version&gt;1.10.x&lt;/version&gt; &lt;!-- 使用最新的版本号 -...

    介绍了java中ant的使用方法与技巧,

    java ant use 介绍了java中ant的使用方法与技巧,

    Java 代码调用ANT

    ### Java 代码调用 ANT 的方法与实践 #### 一、引言 在软件开发过程中,构建工具扮演着至关重要的角色。Apache Ant 是一个流行的 Java 平台上的构建工具,它提供了一种灵活的方式来自动化构建过程。通过 XML 文件...

    java代码调用ant执行类

    在Java中调用Ant,我们可以将构建逻辑集成到应用程序中,或者在需要动态执行构建任务时使用。 首先,我们需要了解Ant的核心概念。Ant的工作主要基于构建文件(通常命名为build.xml),这个文件包含了各种目标...

    java Ant工具电子书,pdf格式

    这本书《Java Ant工具电子书》深入浅出地介绍了Ant的工作原理和使用方法,对于Java开发者来说是一份非常实用的学习资料。 PDF格式是Portable Document Format的缩写,是一种用于表示文档的文件格式,包括文本格式和...

    java Ant入门教程

    ### Java Ant 入门教程详解 ...对于 Java 开发者来说,掌握 Ant 的使用方法是非常有帮助的,它可以帮助我们自动化常见的构建任务,提高开发效率。无论是初学者还是经验丰富的开发者,都能从 Ant 中获益匪浅。

    java编程式启动ant

    Java编程式启动Ant是一种在Java程序中调用Apache Ant工具执行构建任务的方法。Apache Ant是一个基于Java的任务驱动的构建系统,常用于自动化Java项目的编译、打包、测试等任务。以下将详细介绍如何通过Java代码来...

    Java Development with Ant.pdf

    综上所述,《Java Development with Ant》这本书详细介绍了如何使用Ant这一强大的构建工具来进行Java项目的开发。从基础入门到高级应用,从单一任务到复杂案例,本书都提供了详尽的指导。通过学习本书,开发者不仅...

    Effective Enterprise Java Ant Sleepless in Java

    《Ant》是Java世界中的一个经典构建工具,它的权威指南详细介绍了如何配置和使用Ant进行项目构建、自动化测试和部署。Ant基于XML来定义构建过程,使得构建脚本易于理解和维护。书中详细讲解了Ant的任务、属性、条件...

    ant调用java类

    本文将详细解释如何使用 Ant 脚本来调用 Java 类,并结合提供的文件内容进行解析。 首先,我们需要了解 Ant 的 `&lt;java&gt;` 标签,这是 Ant 调用 Java 类的主要方式。在提供的 `testset_build.xml` 文件中,`&lt;java&gt;` ...

    如何使用ANT开发Java程序

    ### 如何使用ANT开发Java程序 #### 一、前言 Apache Ant 是一款开源的Java构建工具,用于自动化软件构建过程中的编译、测试、部署等任务。它使用XML格式来定义构建规则,并通过一系列预定义的任务来执行这些规则。...

    java ant配置测试

    ### Java Ant 配置 JUnit 测试详解 #### 背景介绍 在现代软件开发过程中,自动化测试已经成为确保代码质量的重要手段之一。对于Java开发者而言,JUnit是...掌握这些基本的配置方法对Java开发者来说是非常有价值的。

    java zip 压缩 解压缩 附带ant.jar

    在本主题中,我们将深入探讨如何使用Java来对文件进行zip压缩和解压缩,并提及`ant.jar`的作用。 首先,让我们来看一下`JavaZip.java`这个文件。它很可能包含了一个示例程序,演示了如何使用Java API来压缩和解压缩...

    Java Development with Ant

    《Java Development with Ant》是一本非常实用的书籍,不仅涵盖了Ant的基本概念和使用方法,还深入探讨了如何将Ant应用于各种实际场景中。无论是初学者还是有经验的Java开发者,都能从中获得有价值的指导和灵感。...

Global site tag (gtag.js) - Google Analytics