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脚本通常以`<project>`元素开始,其中包含了多个`<target>`元素。每个`<target>`都代表了一个特定的构建阶段,比如编译、测试、打包或者部署。`<target>...
下面,我们将深入探讨Ant的关键知识点。 一、Ant简介 Ant是Apache软件基金会开发的一个Java项目构建工具,它的设计目标是简化项目构建过程,提供一种跨平台的解决方案。Ant的主要优点在于其灵活性和可扩展性,通过...
9. **最佳实践**:通过示例,你可以学习到Ant Design在实际项目中的最佳实践,如何避免常见问题,以及如何与其他库或服务集成。 压缩包内的两个文件"ant-design-demo1.rar"和"ant-design-demo2.rar"可能是不同版本...
以下是关于Ant的详细知识点: 1. **Ant的基本结构**:Ant的核心组件包括任务(Tasks)、属性(Properties)和目标(Targets)。任务是Ant的基本执行单元,如编译Java代码、复制文件等;属性用于存储值,可以被任务...
综合这些信息,我们可以讨论以下几个关于ANT的常见配置知识点: 1. **构建文件结构**:ANT的构建文件通常是XML格式,名为“build.xml”。它定义了目标(targets)和任务(tasks),每个目标是一系列相关任务的集合...
标签"Ant代码示例"暗示这个压缩包中可能包含了一些实际的Ant构建脚本和对应的解释,这些示例可以帮助初学者快速掌握Ant的基本用法和常见任务的配置。例如,可能会有如何配置`<project>`、`<target>`、`<taskdef>`、`...
这本书通常会提供更深入的Ant实践知识,包括最佳实践、复杂构建场景的解决方案、与其他Java工具(如Maven、Ivy)的集成等内容。书中可能还会讲解如何通过Ant管理依赖,构建复杂的项目结构,以及使用Ant进行持续集成...
在Windows系统中,常见的做法是将Ant的bin目录添加到系统PATH变量中。 3. Ant的数据类型和属性:Ant支持多种数据类型,例如文件集(filesets)、路径(path)、模式集(patternset)等。属性(property)在Ant中也...
在IT行业中,尤其是在Java开发领域,Ant是一款广泛应用的构建工具,它基于XML来定义项目构建过程,使得自动化...了解和掌握这些基础知识,对于任何Java开发者来说都是非常重要的,特别是那些需要处理多语言资源的项目。
这些组件覆盖了常见的Web应用设计元素,如导航菜单、页签切换、下拉列表、按钮样式等,满足了设计者在构建原型时对细节的把控需求。通过使用这些预设的组件,设计者可以减少手动创建组件的时间,更专注于整体布局和...
以下将详细阐述Ant的相关知识点。 1. **Ant简介** Ant是一个基于Java的构建工具,它的设计目标是简化Java项目构建过程,通过XML描述构建脚本来实现自动化任务。它不受任何特定IDE的限制,可以在任何支持Java的环境...
在"Ant部署WebService服务"中,我们需要了解以下核心知识点: 1. **Ant基础**: - Ant是一个基于XML的脚本语言,其配置文件通常命名为`build.xml`,其中定义了构建过程的各种任务(tasks)。 - `build.xml`中的...
本篇文章将详细介绍如何使用Ant来打包Android应用,以及涉及到的相关知识点。 首先,理解Ant的基本概念是必要的。Ant基于XML,通过构建文件(通常命名为build.xml)来定义构建任务。这些任务可以包括编译源代码、...
3. **任务(Task)**:介绍常见的Ant任务,如`javac`用于编译Java源代码,`jar`用于打包JAR文件,`copy`用于复制文件,`delete`用于删除文件或目录,以及`mkdir`用于创建目录。 4. **条件语句和循环**:Ant支持条件...
5. 常见问题和解决方案:列出可能遇到的问题以及对应的解决方法。 在压缩包中的文件名列表"ant打war包"可能是整个构建过程的示例项目,包含了一个使用Ant构建WAR包的实际项目结构,用户可以参考这个示例来理解和...
这个“ant-1.7+中文教程”压缩包包含了Ant版本1.7和一份对应的中文教程,对于初学者或是需要更新Ant知识的开发者来说,这是一个非常宝贵的资源。 Ant是一款基于XML的构建工具,它的主要任务是自动化Java项目的构建...
### Java Development with Ant #### 知识点概览 1. **Ant介绍** - Ant的概念与起源 - Ant的主要功能与应用场景 - Ant与构建自动化的重要性 2. **Ant入门指南** - 安装与配置Ant - 创建第一个Ant脚本 - ...
《Ant工具的一些知识(二)》 在软件开发过程中,构建工具起着至关重要的作用,它们帮助开发者自动化处理编译、测试、打包等任务。Apache Ant是Java领域广泛使用的构建工具,它基于XML来定义项目构建过程。这篇博客将...