`

Ant常见知识

 
阅读更多

1.一个jar打包程序示例

 

<target name="clientjar" depends="compile">
        <jar jarfile="${DYVCenterVNCClient.build}/dist/${DYVCenterVNCClient.jar}">
            <manifest>
                <attribute name="Built-By" value="${user.name}"/>
                <attribute name="Built-Time" value="${build.time}"/>
                <attribute name="Main-Class" value="classsname"/>
            </manifest>
            <fileset dir="${DYVCenterVNCClient.classbindir}"/>
            <!--<fileset dir="./META-INF"/>-->

           <zipfileset src="${thirdpart.lib}/apache-cxf-2.4.1/lib/cxf-2.4.1.jar"/>
           <!--特别注意这里的include的形式-->
            <zipfileset src="${thirdpart.lib}/apache-cxf-2.4.1/lib/xmlschema-core-2.0.jar">
                <include name="org/**"/>
                <include name="META-INF/maven/**"/>
            </zipfileset>

        </jar>
    </target>

 

2.如何在javac的classpath和copy任务引用相同的目录(using filelist for classpath and copy task)

   http://coding.derkeiler.com/Archive/Java/comp.lang.java.programmer/2008-02/msg00342.html

   filelist必须定义dir,否则copy时拷贝不了文件

<path id="CLASSPATH">
        <filelist id="ID_DYV_FILELIST" dir="..">
            <file name="DYVServer/build/dist/DYVServer.jar"/>
            <file name="DYVCenterVNCClient/build/dist/DYVCenterVNCClient_HostVCenter.jar"/>
        </filelist>
        <filelist id="ID_THIRDPART_FILELIST" dir="${thirdpart.lib}">                     
            <file name="log4j/1.2.15/log4j-1.2.15.jar"/>
            <file name="jettison/1.3/jettison-1.3.jar"/>          
        </filelist>
        <fileset id="ID_SPRING_FRAMEWORK" dir="${thirdpart.lib}/spring-framework/3.0.5" includes="**/*.jar"/>
        <fileset id="ID_JGROUP" dir="${thirdpart.lib}/jgroup/2.12.2" includes="*.jar"/>
    </path>

<javac includeantruntime="false"
               srcdir="${build.src.dir}" excludes="test/"
               destdir="${build.classes.dir}"
               fork="yes"
               source="1.8"
               debug="on"
               encoding="UTF-8"
               classpathref="CLASSPATH">
</javac>

<!--flatten为true,表示只拷贝文件不包含文件所在的目录-->
        <copy todir="${build.dist.dir}/lib" flatten="true">
            <filelist refid="ID_DYV_FILELIST"/>
            <filelist refid="ID_THIRDPART_FILELIST"/>
        </copy>
        <copy todir="${build.dist.dir}/lib">
            <fileset refid="ID_JGROUP"/>
            <fileset refid="ID_SPRING_FRAMEWORK"/>
         </copy>

 

分享到:
评论

相关推荐

    Ant常见属性解析--target

    下面将详细解析Ant中的"target"属性及其相关知识。 首先,Ant脚本通常以`&lt;project&gt;`元素开始,其中包含了多个`&lt;target&gt;`元素。每个`&lt;target&gt;`都代表了一个特定的构建阶段,比如编译、测试、打包或者部署。`&lt;target&gt;...

    Ant权威指南(ant 学习)

    下面,我们将深入探讨Ant的关键知识点。 一、Ant简介 Ant是Apache软件基金会开发的一个Java项目构建工具,它的设计目标是简化项目构建过程,提供一种跨平台的解决方案。Ant的主要优点在于其灵活性和可扩展性,通过...

    ant-design-demos

    9. **最佳实践**:通过示例,你可以学习到Ant Design在实际项目中的最佳实践,如何避免常见问题,以及如何与其他库或服务集成。 压缩包内的两个文件"ant-design-demo1.rar"和"ant-design-demo2.rar"可能是不同版本...

    ant

    以下是关于Ant的详细知识点: 1. **Ant的基本结构**:Ant的核心组件包括任务(Tasks)、属性(Properties)和目标(Targets)。任务是Ant的基本执行单元,如编译Java代码、复制文件等;属性用于存储值,可以被任务...

    ANT---常见配置

    综合这些信息,我们可以讨论以下几个关于ANT的常见配置知识点: 1. **构建文件结构**:ANT的构建文件通常是XML格式,名为“build.xml”。它定义了目标(targets)和任务(tasks),每个目标是一系列相关任务的集合...

    ant包+示例

    标签"Ant代码示例"暗示这个压缩包中可能包含了一些实际的Ant构建脚本和对应的解释,这些示例可以帮助初学者快速掌握Ant的基本用法和常见任务的配置。例如,可能会有如何配置`&lt;project&gt;`、`&lt;target&gt;`、`&lt;taskdef&gt;`、`...

    Ant学习资料大全全全全全

    这本书通常会提供更深入的Ant实践知识,包括最佳实践、复杂构建场景的解决方案、与其他Java工具(如Maven、Ivy)的集成等内容。书中可能还会讲解如何通过Ant管理依赖,构建复杂的项目结构,以及使用Ant进行持续集成...

    使用Ant进行java开发

    在Windows系统中,常见的做法是将Ant的bin目录添加到系统PATH变量中。 3. Ant的数据类型和属性:Ant支持多种数据类型,例如文件集(filesets)、路径(path)、模式集(patternset)等。属性(property)在Ant中也...

    ant1.8.4.zip

    在IT行业中,尤其是在Java开发领域,Ant是一款广泛应用的构建工具,它基于XML来定义项目构建过程,使得自动化...了解和掌握这些基础知识,对于任何Java开发者来说都是非常重要的,特别是那些需要处理多语言资源的项目。

    AntDesign3.9Axure组件.zip

    这些组件覆盖了常见的Web应用设计元素,如导航菜单、页签切换、下拉列表、按钮样式等,满足了设计者在构建原型时对细节的把控需求。通过使用这些预设的组件,设计者可以减少手动创建组件的时间,更专注于整体布局和...

    ant文档集合(自己学习ant时的资料)

    以下将详细阐述Ant的相关知识点。 1. **Ant简介** Ant是一个基于Java的构建工具,它的设计目标是简化Java项目构建过程,通过XML描述构建脚本来实现自动化任务。它不受任何特定IDE的限制,可以在任何支持Java的环境...

    Ant部署WebService服务

    在"Ant部署WebService服务"中,我们需要了解以下核心知识点: 1. **Ant基础**: - Ant是一个基于XML的脚本语言,其配置文件通常命名为`build.xml`,其中定义了构建过程的各种任务(tasks)。 - `build.xml`中的...

    使用ant打包android

    本篇文章将详细介绍如何使用Ant来打包Android应用,以及涉及到的相关知识点。 首先,理解Ant的基本概念是必要的。Ant基于XML,通过构建文件(通常命名为build.xml)来定义构建任务。这些任务可以包括编译源代码、...

    ant 工程

    3. **任务(Task)**:介绍常见的Ant任务,如`javac`用于编译Java源代码,`jar`用于打包JAR文件,`copy`用于复制文件,`delete`用于删除文件或目录,以及`mkdir`用于创建目录。 4. **条件语句和循环**:Ant支持条件...

    ant打war包

    5. 常见问题和解决方案:列出可能遇到的问题以及对应的解决方法。 在压缩包中的文件名列表"ant打war包"可能是整个构建过程的示例项目,包含了一个使用Ant构建WAR包的实际项目结构,用户可以参考这个示例来理解和...

    ant-1.7+中文教程

    这个“ant-1.7+中文教程”压缩包包含了Ant版本1.7和一份对应的中文教程,对于初学者或是需要更新Ant知识的开发者来说,这是一个非常宝贵的资源。 Ant是一款基于XML的构建工具,它的主要任务是自动化Java项目的构建...

    Java Development with Ant.pdf

    ### Java Development with Ant #### 知识点概览 1. **Ant介绍** - Ant的概念与起源 - Ant的主要功能与应用场景 - Ant与构建自动化的重要性 2. **Ant入门指南** - 安装与配置Ant - 创建第一个Ant脚本 - ...

    ant 工具的一些知识(二)

    《Ant工具的一些知识(二)》 在软件开发过程中,构建工具起着至关重要的作用,它们帮助开发者自动化处理编译、测试、打包等任务。Apache Ant是Java领域广泛使用的构建工具,它基于XML来定义项目构建过程。这篇博客将...

Global site tag (gtag.js) - Google Analytics