- 浏览: 694054 次
- 性别:
- 来自: 沈阳
文章分类
- 全部博客 (270)
- Ant Tool Script (12)
- XMLDigest (5)
- MyEclipse8.6 (1)
- RedHat (5)
- SVNVersionController (4)
- BatOperation (6)
- JspAndFaceWeb (66)
- javaSwing (18)
- PHP (12)
- J2SE (6)
- TestToolAndTestManual (12)
- C# (34)
- Java PatternDesign (20)
- Axis2AndWebService (5)
- ITLive (2)
- DBAndControl (10)
- C/C++ (8)
- Andriod (7)
- Python (7)
- JavaWork (16)
- Android-QA (1)
- Apache-Wicket (1)
- POI (1)
- JQuery (2)
- Struts2 (1)
- Flex&Flash (6)
- sdsdsd (0)
- 1212 (0)
最新评论
-
anayomin:
对九楼继续改进
public static <T> ...
Java List 分页 -
H4X0R:
来学习学习,赞一个
Aqua Data Studio 导出SQL -
yankai0219:
现在出现这个错误 Fatal error: Class 'PH ...
纯PHP搭建Apache+Eclipse+xDebug+PHPUnit+MakeGood -
yankai0219:
您好,我在搭建环境中提示PHPUnit_Framework_T ...
纯PHP搭建Apache+Eclipse+xDebug+PHPUnit+MakeGood -
wilsonchen:
chenhailong 写道wilsonchen 写道chen ...
C# RSA和Java RSA互通
看后要回帖的(绝对经典)
首先先介绍一下ant的工程标签
<project name="" default="" basedir="" >
................
</project>
上面的就是ant的工程标签了
中 name是工程的属性名,当ant开始时,会显示工程名,default标签是默认运行的target(任务),就是ant运行这个build时,会默认 的找到那个target,然后执行它。 basedir标签一般都是"." 也就是查找project时的基本路径用”.“查找
下面介绍project内部的标签和属性:
1.数据元素(英文翻译)DataElement
特性:property 和DataType类型(很像全局变量和局部变量,大家都能用到,我是这么理解的)
举个很简单的小例子:
<?xml version="1.0" encoding="UTF-8"?> <project basedir="." default="prepare" name="Testproperty"> <property name="prop1" value="It is my first property" /> <property name="prop2" value="${prop1}+It is my second property" /> <property name="prop3" value="${prop2}: It is my third property" /> <property file="conf/log4j.properties" /> <property name="build.dir" value="build" /> <property name="lib.dir" value="${build.dir}/lib" /> <!-- The DataType value--> <path id="classpath"> <fileset dir="${lib.dir}"> <include name="**/*.jar" /> </fileset> </path> <!-- Create a file of build--> <target name="prepare"> <mkdir dir="${build.dir}" /> </target> </project>
下面分析一下:
project 标签就不说了
1.property标签有3个属性:
- name------------------------property的名字
- value------------------------property的值
- file---------------------------显示的导入文件(同java的System.setproperty()方法)
2.DataType是定义的属性
像path ,fileset ,src 都是DataType类型,指定的类型。。
说明下path的作用:
是将build/lib包下的所有jar文件全部包含进来。。。。。
3.Target标签了,也是project下用的最多,也是最重要的 。。。project标签必须有个默认的target,上面的target的作用是,在build.xml目录下创建一个build目录,就是顶级目录下创建build目录。。
很简单的例子,但很能说明一个问题:DataType包含property,有些复杂的property可以很简单的用DataType解决
很强大。。
下面我发个比较复杂的例子,然后具体分析下target的标签
<?xml version="1.0" encoding="UTF-8"?> <!-- Comment are just as important in build files ,do not avoid writing them! --> <!-- Example build file for "Ant : The Definitive Guide" and its sample project: AntDemo3" --> <project name="AntDemo3" default="all" basedir="."> <!-- Project-wide setting .All directories are relative to the project root directory --> <!-- Project directory --> <property name="src.dir" value="src" /> <property name="doc.dir" value="src" /> <property name="dist.dir" value="src" /> <property name="lib.dir" value="src" /> <property name="bin.dir" value="src" /> <!-- Temporary build directory names --> <property name="build.dir" value="build" /> <property name="build.classes" value="${build.dir}/classes" /> <property name="build.doc" value="${build.dir}/doc" /> <property name="build.lib" value="${build.dir}/lib" /> <!-- Global setting --> <property name="javac.debug" value="on" /> <property name="debug.flag" value="on" /> <property name="java.lib" value="${java.home}/jre/lib/rt.jar" /> <!-- Global "magic" property for <javac> --> <property name="build.compiler" value="modern" /> <!-- DataType for lib of classpath --> <path id="classpath"> <fileset dir="${lib.dir}"> <include name="**/*.jar" /> </fileset> </path> <!-- Target to create the build directories prior to a compile target --> <!-- We also mark the start time of the build ,for the log. --> <target name="prepare"> <mkdir dir="${build.dir}" /> <mkdir dir="${build.lib}" /> <mkdir dir="${build.classes}" /> <mkdir dir="${build.classes}/modules" /> <tstamp /> <echo message="${TSTAMP}" /> </target> <!-- Build the application --> <target name="application" depends="prepare"> <!-- Compile the application classes,not the module classes --> <javac destdir="${build.classes}" debug="${debug.flag}" deprecation="on"> <!-- We could have used javac's srcdir attribute --> <src path="${src.dir}" /> <exclude name="AntDemo3/modules/**" /> <classpath refid="classpath" /> </javac> <!-- Package the application into a JAR --> <jar jarfile="${build.lib}/ AntDemo3.jar " basedir="${build.classes}"> <exclude name="AntDemo3/modules/**" /> </jar> </target> <!-- Build the modules --> <target name="modules" depends="prepare,application"> <!-- Compile just the module classes --> <javac destdir="${build.classes}/modules" debug="${debug.flag}" deprecation="on"> <!-- We could have used javac's srcdir attribute --> <src path="${src.dir}" /> <exclude name="AntDemo3/modules/**" /> <classpath refid="classpath" /> </javac> <!-- Package the modules as a JAR --> <jar jarfile="${build.lib}/ modules.jar " basedir="${build.classes}"> <exclude name="AntDemo3/modules/**" /> </jar> </target> <!-- Do all --> <target name="all" depends="modules,application" /> <!-- Generate the API documentation AntDemo3 and the modules --> <target name="javadoc" depends="application" > <mkdir dir="${doc.dir}/api"></mkdir> <javadoc packagenames="AntDemo3.*" sourcepath="${src.dir}" destdir="${doc.dir}/api" author="true" version="true" use="true" > <classpath refid="classpath" /> </javadoc> </target> <!-- Delete class files build during previous builds.leave directories --> <target name="clean"> <delete> <fileset dir="${build.classes}" includes="**/*.class" /> </delete> </target> <!-- Delete any created directories and their contents --> <target name="cleanall" depends="clean" > <delete dir="${build.dir}" /> <delete dir="${dist.dir}" /> <delete dir="${doc.dir}/api" /> </target> <!-- Deploy the application in a "ready-to-run" state --> <target name="deplpy" depends="application,javadoc" > <!-- Create the distribution directory --> <mkdir dir="${dist.dir}" /> <mkdir dir="${dist.dir}/bin" /> <mkdir dir="${dist.dir}/lib" /> <mkdir dir="${dist.dir}/doc" /> <mkdir dir="${dist.dir}/config" /> <!-- Copy the primary program and modules --> <copy todir="${dist.dir}/lib" > <fileset dir="${build.classes}" /> <fileset dir="${build.lib}" includes="AntDemo3.jar" /> <fileset dir="${build.lib}" includes="modules.jar" /> <fileset dir="${lib.dir}" includes="*.jar" /> </copy> <!-- Copy the documentation --> <copy todir="${dist.dir}/doc" > <fileset dir="${doc.dir}" /> </copy> <!-- Copy the pre-fab configuration files --> <copy todir="${dist.dir}/config"> <fileset dir="${lib.dir}" includes="*.xml" /> </copy> <!-- Copy the running scripts --> <copy todir="${dist.dir}/bin" > <fileset dir="${bin.dir}" includes="*.script" /> <fileset dir="${bin.dir}" includes="*.bat" /> </copy> </target> </project>
以上很多但很简单。。。希望能仔细阅读
分析:
首先分析下ant的错误级别:
看懂了错误才能做修正。。。。嘿嘿
1.工程级错误,也就是project标签内的错误,ant遇到错误会立即停止,如果你其中一个target写错了,那么ant会认为这次的执行失败,会导致不可预料的错误和时间资源的浪费。。
2.目标级错误,也就是target标签内的错误,ant遇到不会停止任务,只会报错,也很好解决。。。
还有一点要说明一下:
ant是按顺序执行的,如果你要颠倒顺序的话,有些变量是不能识别的。。注意
说说一些标签的用处:
src (DataType) == srcdir属性
destdir----------------------编译后class类的放置目录
excludes--------------------不包含name的东西(可能是目录和文件)
refid--------------------------找寻上面定义的id
debug------------------------是否debug(值是boolean类型)
deprecation-----------------是否用到过期类(值是Boolean类型)
echo--------------------------给log输出信息
jarfile-------------------------打包后jar的位置目录
basedir----------------------目标目录
todir--------------------------目标目录
delete------------------------删除
failonerror-------------------Ant将一个失败的copy也看做是成功的。(属性)
上面初步的介绍了ant的标签和属性,其实到这,ant你也能写东西了,如果还想研究的话。。请看ant开发3。。。。。。
发表评论
-
最全的Ant文件
2013-05-27 16:41 2355<?xml version="1.0&qu ... -
Maven compile multiple source directory
2013-02-18 08:44 4037这个是今年的第一篇文章,也达成了我的目标这篇文章算是250 ... -
SetpCount Eclipse plugin简单实践
2013-01-09 18:30 1973请教别人,耻辱一时,不请教别人,耻辱一生 这句话真 ... -
Maven 打包
2012-11-20 10:46 0<?xml version="1.0&q ... -
Maven 整合Eclipse 插件
2012-09-03 10:37 1189对于Maven,其实本人不是特别的熟悉,也是在不断地摸索,来找 ... -
Maven浅谈
2012-08-31 14:53 0今天工作之余,查看了一下maven的API,发现如下的url ... -
SVN delete auto merge
2012-05-14 09:45 0Some people don't like the f ... -
Maven基础介绍
2012-02-07 09:23 1953今天索性研究了下maven 一切从零开始,我将讲解Maven ... -
Ant Warning :***** moify in furture 解决方案
2011-09-22 15:21 1062如果ant执行的时候遇到以上问题的话,那么说明你的File 的 ... -
Ant 常用标签和Target
2011-03-01 16:18 3942为了以后方便,我把工作时候常用的Ant标签和Target总 ... -
Ant开发五(只求最好)
2010-12-12 18:01 1187接着上面的文章: 3.available: 一下是常用的属 ... -
Ant开发四(只求最好)
2010-12-05 16:32 2154看后要回帖的(绝对经 ... -
Ant开发三(只求最好)
2010-12-04 21:44 1562看后要回帖的(绝对经典) 现在我们继续。。。。 首先在 ... -
Ant开发一(只求最好)
2010-12-04 07:59 1608看后要回帖的(绝对经典) Ant开发 说实话Ant的出 ...
相关推荐
开发工具 ant-1.9.6开发工具 ant-1.9.6开发工具 ant-1.9.6开发工具 ant-1.9.6开发工具 ant-1.9.6开发工具 ant-1.9.6开发工具 ant-1.9.6开发工具 ant-1.9.6开发工具 ant-1.9.6开发工具 ant-1.9.6开发工具 ant-1.9.6...
Ant是Apache软件基金会下的一个项目,它是一款强大的Java构建工具,尤其在J2EE应用程序的开发中发挥着至关重要的作用。Ant以其XML为基础的构建文件(build.xml)为特色,使得构建过程可配置且可重复执行,从而极大地...
Apache Ant 是一个由Java编写的开源构建工具,它在软件开发过程中扮演着自动化任务执行的角色,比如编译、打包、测试和部署等。Ant 的核心理念是基于XML的构建文件(通常命名为build.xml),其中定义了一系列的任务...
ant快速参考(OSSEZ) ant开发文档 很详细很具体
在Java开发中,Ant以其灵活性和可扩展性而受到广泛欢迎,它使用XML来描述构建过程,允许开发者定义任务、目标和依赖关系,使得自动化编译、测试、打包等流程变得简单易行。 标题"ant开发工具"指的是Ant作为开发者...
虽然现代Java开发中,如Maven和Gradle等构建工具的流行度已经超越了Ant,但Ant由于其历史的悠久和简单易学的特点,仍然在一些项目和团队中保持着活跃地位。因此,掌握Ant对Java开发者来说,仍然是一个十分有帮助的...
二、Ant基础知识 1. **构建文件(build.xml)**:这是Ant的核心配置文件,所有构建规则都定义于此。构建文件采用XML格式,易于阅读和维护。主要元素包括`<project>`、`<target>`、`<task>`等,用于组织和执行构建...
### Android Ant 开发入门教程 #### 一、概述 随着移动互联网的发展,Android 成为了最受欢迎的移动操作系统之一。为了能够高效地开发出高质量的应用程序,开发者们常常会选择使用不同的工具和框架来加速开发流程...
### 如何使用ANT开发Java程序 #### 一、前言 Apache Ant 是一款开源的Java构建工具,用于自动化软件构建过程中的编译、测试、部署等任务。它使用XML格式来定义构建规则,并通过一系列预定义的任务来执行这些规则。...
《贯通Java Web开发三剑客:Eclipse+Tomcat+Ant整合开发》.part2.rar
为Weblogic 配置ANT 开发环境
"Ant ant ant antant ant ant antant ant ant ant" 这个描述可能是在强调Ant在项目构建过程中的重复性和不可或缺性,暗示着它在工程中的频繁使用和核心地位。 Ant的设计理念是“一切都是XML”,它通过XML格式的构建...
开发工具 ant-launcher-1.9.6开发工具 ant-launcher-1.9.6开发工具 ant-launcher-1.9.6开发工具 ant-launcher-1.9.6开发工具 ant-launcher-1.9.6开发工具 ant-launcher-1.9.6开发工具 ant-launcher-1.9.6开发工具 ...
在工作之余整理出了基于ejb3的简单企业级开发demo,本实例采用了两个项目来实现(一个客户端和一个服务器端),并且采用ant进行打包、部署,默认采用oracle11g数据库 客户端可以安装到任何java web服务器中(例如...
《Ant应用开发指南》是IT领域中针对Ant构建工具的一份详尽的教程与资源,旨在帮助开发者深入了解并掌握Ant的使用方法与实践技巧。Ant,最初作为一个缩写代表“Another Neat Tool”,是一个功能强大的构建工具,尤其...
AntDesignPro 开发手册 AntDesignPro 是一个前端设计解决方案,由蚂蚁金服体验技术部出品/维护。核心技术组成包括 ES2015+ JavaScript 语言的新标准、React 用于构建用户界面的 JavaScript 库、dva 是基于(redux...
本主题将深入探讨如何利用集成开发环境(IDE)Eclipse 和构建自动化工具 Ant 来进行 Python 项目的开发。Eclipse 是一个广泛使用的开源 IDE,最初是为 Java 开发设计的,但通过插件扩展,它也支持多种其他语言,包括...
ANT+协议是一种无线通信协议,主要用于运动健康和健身设备之间的数据传输。...同时,这个项目也可能为其他开发者提供了一个起点,他们可以在此基础上进行二次开发,创建更复杂、个性化的ANT+设备管理工具。
基于vue Ant-Design 的表单设计器,快速开发.zip基于vue Ant-Design 的表单设计器,快速开发.zip基于vue Ant-Design 的表单设计器,快速开发.zip基于vue Ant-Design 的表单设计器,快速开发.zip基于vue Ant-Design ...
ant ant下载 ant配置ant ant下载 ant配置ant ant下载 ant配置