`
michael_paul
  • 浏览: 173139 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

Ant build.xml

阅读更多
http://www.cnblogs.com/bingoidea/archive/2010/05/04/1727298.html
[size=xx-small][size=xx-small][align=left]
<!--Ant(another neat tool--- 另一个整洁的工具)-->

<?xml version="1.0"?>
<project default="dist" name="Project A">
    <description>
        一段描述信息,没有实际作用。
    </description>
    <!--property 元素相当于变量,存放一定的值,一旦给定以后不能改变,只能通过控制台命令行给初始值。
                一般用 value 给其赋值,这里用 location 代替 value 是因为 location 属性专门设
                计用于以平台无关的方式包含文件系统路径,也就是当前路径。-->
    <property name="srcDir" location="."/>
    <property name="buildDir" location="classes"/>
    <property name="distDir" location="dist"/>
    
    <!--一个target 元素就是一个任务,一个步骤,如果命令行没有指定开始任务,则由 project 元素的 default 属性决定要执行的任务-->
    <target name="init" description="在元素中指定描述信息!">
        <echo message="这里的信息将被输出到控制台!">
        <!--tstamp 元素一般不定义属性和内容,不产生任何输出;相反,它根据当前系统时间和日期设置 Ant 以下属性:
        属性                说明                                    例子
        DSTAMP            设置为当前日期,默认格式为 yyyymmdd        20031217
        TSTAMP            设置为当前时间,默认格式为 hhmm            1603
        TODAY            设置为当前日期,带完整的月份            2003 年12 月17 日-->
        <tstamp/>
        <!--mkdir 元素用来创建目录 dir 属性用来指定目录路径-->
        <!--delete 元素用来删除目录 ${buildDir} 引用 property 元素指定的 name 为 buildDir 的属性变量-->
        <mkdir dir="${buildDir}"/>
        <mkdir dir="${distDir}"/>
        <!--文件操作:
            <copy file="src/Test.java" tofile="src /TestCopy.java"/> 把文件 Test.java 拷贝一份 TestCopy.java 
            <move file="src/Test.java" tofile="src /TestCopy.java"/> 把文件 Test.java 重新命名为 TestCopy.java
            <copy file="src/Test.java" todir="archive" /> 把文件 Test.java 从 src 目录复制一份到 archive 目录下
            <move file="src/Test.java" todir="archive" /> 把文件 Test.java 从 src 目录下移动到 archive 目录下
            <replace file="input.txt" token="old" value="new"/>replace 任务,它执行文件中的查找和替换操作。
            token 属性指定要查找的字符串,
            value 属性指定一个新的字符串,
            查找到的标记字符串的所有实例都被替换为这个新的字符串.
            替换操作将在文件本身之内的适当位置进行。为了提供更详细的输出,可把 summary 属性设置为
            true。这将导致该任务输出找到和替换的标记字符串实例的数目。
            <copy todir="archive">---使用模式匹配复制多个文件
                <fileset dir="src"> --fileset 代替 file 属性
                    <include name="*.java"/& gt;--包含 src 目录下所有的 *.java 文件
                    <exclude name="*.class"/& gt;--不包含 src 目录下所有的 *.class 文件
                </fileset>
            </copy>-->
    </target>

    <!--target 元素的 depends 属性用来设置多个 target 元素之间的依赖关系,如果要执行某个任务,必须先执行 depends 属性指定的所有
        它所依赖的 target 元素,只有它所依赖的所有 target 元素都执行完了才能执行它自己-->
    <target name="com" depends="init">
        <!--javac 元素把 srcdir 指定目录下所有 *.java 文件编译成 *.class 文件到 destdir 指定的目录下!
            如果不指定 destdir 属性,那么默认编译到同一目录下。其他属性:
             classpath:等价于javac 的-classpath 选项。
             debug="true":指示编译器应该带调试信息编译源文件。
             fork="true":当你希望指定编译器的某些内存选项,或者需要使用一种不同级别的编译器的时候。该属性设置为“true”
             executable="d:sdk141injavac":指定一个不同的 javac 可执行文件。
             memoryMaximumSize="128m":向上边指定的 javac 传递一个最大内存设置-->
        <javac srcdir="${srcDir}" destdir="${buildDir}"/>
    </target>

    <target name="dist" depends="com">
        <!--jar 元素:在编译 Java 源文件之后,结果类文件通常被打包到一个 JAR 文件中,这个文件类似 zip 归档文
            件。每个 JAR 文件都包含一个清单文件,它可以指定该 JAR 文件的属性。
            还可以把目录下的所有内容打包为 WAR 文件
            destfile:打包后的文件全名
            basedir:要打包的文件路径-->
        <jar destfile="${distDir}/package-${DSTAMP}.jar" basedir="${buildDir}">
            <!--manifest 属性允许指定一个用作该 JAR 文件的清单的文件。清单文件的内容还可以使用 manifest
                任务在生成文件中指定。这个任务能够像文件系统写入一个清单文件,或者能够实际嵌套在 jar 之
                内,以便一次性地创建清单文件和 JAR 文件。-->
            <manifest>
                <attribute name="Built-By" value="${user.name}"/>
                <attribute name="Main-Class" value="package.Main"/>
            </manifest>
        </jar>
        <jar destfile="${distDir}/package-src-${DSTAMP}.jar" basedir="${srcDir}"/>
    </target>

    <target name="zip" depends="dist">
        <!--zip 元素用来创建 zip 包,和 jar 元素相似-->
        <zip destfile="output.zip" basedir="output"/>
        <!--相同的语法也可用于创建 tar 文件。 还可以使用 GZip 和 BZip 任务来压缩文件。-->
        <tar destfile="output.tar" basedir="output"/>
        <gzip src="output.tar" zipfile="output.tar.gz"/>
        <!--解压缩和提取文件同样也很简单.-->
        <unzip src="output.tar.gz" dest="extractDir"/>
        <!--还可以包括 overwrite 属性来控制覆盖行为。默认设置是覆盖与正在被提取的归档文件中的条目相
            匹配的所有现有文件。相关的任务名称是 untar、unjar、 gunzip 和 bunzip2。-->
    </target>

    <!--编写一个 clean目标来从目标目录移除生成的任何类文件是个很好的习惯。如果想要确
        保所有源文件都已编译,就可以使用这个任务。这种行为刻画了 Ant 的许多任务的特点:
        如果某个任务能够确定所请求的操作不需要执行,那么该操作就会被跳过。-->
    <target name="clean">
        <delete dir="${buildDir}"/>
        <delete dir="${distDir}"/>
    </target>
</project>
[/align]
[/size][/size]
分享到:
评论
1 楼 SmackDown 2012-02-02  
[/align][align=center]

相关推荐

    ant build.xml 详解

    《Ant build.xml详解——构建Java项目的关键》 Apache Ant,作为一个开源的自动化构建工具,是Java开发者不可或缺的利器。它的核心在于一个名为`build.xml`的配置文件,它定义了项目的构建过程,包括编译、测试、...

    ant build.xml 使用实例

    Apache Ant 是一个广泛使用的Java构建工具,它以XML格式定义构建脚本,即`build.xml`文件。这个文件包含了构建项目的整个流程,从编译源代码到生成最终的可执行或部署包。下面我们将深入探讨`build.xml`的使用以及...

    ant build.xml文件详解

    Ant build.xml 文件详解 Ant 是一个项目管理工具,相比make命令,gnumake和nmake等编译工具,Ant克服了这些工具的缺陷。Ant 的优点包括跨平台性、操作简单、易于集成到开发环境中。Ant 的构建文件是 XML 格式的文件...

    ant build.xml例子

    Ant是Apache组织提供的一款Java语言的构建工具,它的配置文件通常以`build.xml`为名,它是Ant工作的蓝图。这篇博客文章“ant build.xml例子”可能详细介绍了如何使用Ant来管理Java项目的构建过程。 `build.xml`文件...

    ant build.xml编写

    《Ant build.xml构建详解》 在软件开发过程中,构建工具起着至关重要的作用,它能够自动化执行编译、测试、打包等任务。Apache Ant是Java领域广泛应用的一个构建工具,其核心在于一个名为`build.xml`的配置文件。...

    ant build.xml

    经过几天学习,总结出ant build.xml的基本版,实现了: &lt;!--初始化操作--&gt; &lt;!--拷贝操作--&gt; &lt;!--编译--&gt; &lt;!--war打包--&gt; 执行顺序为: &lt;!--project的default属性为build,所以本target...

    ant的build.xml模板

    《Ant的build.xml模板详解与应用》 在软件开发领域,构建工具是不可或缺的一部分,它帮助开发者自动化地完成编译、测试、打包等任务。Apache Ant作为Java领域的一款经典构建工具,以其灵活性和强大的功能深受广大...

    一个常用的ant的build.xml

    Ant是基于XML的,它的核心在于`build.xml`文件,这个文件是项目的构建脚本,详细定义了构建过程中的各种任务和依赖关系。 标题“一个常用的ant的build.xml”暗示了我们讨论的是一个标准且常见的Ant构建配置文件。...

    ant build.xml 配置文件

    我的开发环境是Eclipse,ant.xml是放在项目下的ant(新建),也可以修改project的basedir.

    ant build.xml范例

    "ant build.xml范例"指的是使用Ant工具时创建的构建配置文件build.xml,它是Ant工作的蓝图,定义了项目的构建过程。 1. **Ant的基本概念** - Ant是一个Java库和命令行工具,其任务是驱动构建过程。 - build.xml...

    ANT Build.xml 自动编译 part3

    ANT Build.xml 自动编译

    jmeter+ant 持续集成build.xml文件

    jmeter+ant 持续集成build.xml文件,直接使用ant命令执行jmeter脚本文件,得到图形测试报告

    ANT Build.xml 自动编译 part2

    ANT Build.xml 自动编译

    ant 默认构建文件 demo build.xml

    ant build.xml demo 供自己及好友学习,能很快上手

    Jmeter+ant实现测试报告build.xml和报告模板jmeter-results-newreport.xsl

    3. **build.xml文件详解**:`build.xml`是Ant的构建文件,其中包含了一系列的任务和目标。例如,你可以定义一个目标来启动JMeter,另一个目标来生成测试报告,甚至还有一个目标用来发送测试结果的邮件通知。在描述中...

    生成ANT所需要的Build,xml文件

    "生成ANT所需要的Build.xml文件"这一主题,核心在于如何通过Python程序自动生成ANT的配置文件——build.xml。 首先,我们要理解ANT的build.xml文件。它是ANT的核心,包含了一系列的构建目标和任务。这些目标定义了...

    Ant build.xml详解

    Ant build.xml 详解 Ant 是一个基于 Java 语言的编译工具,它的主要功能是自动化项目的编译和构建过程。Ant 的出现是为了克服 make 和其他编译工具的缺陷,它具有跨平台性、操作简单、易于维护和书写、结构清晰等...

    Ant_build.xml配置实例

    Ant_build.xml配置实例,Ant的详细配置,很实用

    ant 较完整的build.xml解释

    ### ant 较完整的build.xml解释 #### 一、Ant简介及优势 Ant 是一款开源的构建工具,主要用于Java项目的构建和部署。与传统的构建工具如Make相比,Ant具有诸多优势,尤其是在跨平台方面表现突出。Ant的核心优势...

Global site tag (gtag.js) - Google Analytics