`

ant

    博客分类:
  • ant
ant 
阅读更多

项目做完了,用的是ant脚本构建的.自己以前没有使用过,所以闲暇之余先来了解一下,学习一下.我自己到网上搜索了一下,找到了<<Ant简单教程>>然后花了二十分钟粗略的看了一下,就开始做了个下例子. 

关于ant的配置环境变量是首先必须的 

首先到 http://ant.apache.org/bindownload.cgi这里去下载ant的压缩包,上面有linux和windows专用的,我这里下的是windows系统下用的.把下在的压缩包解压放在任意目录下然后配置环境变量:

1.配置ANT_HOME: (D:\apache-ant-1.7.1)这是我的目录 

2.pathD:\apache-ant-1.7.1\bin) 

然后进入dos界面输入ant命令显示如下信息 则证明安装成功 

Buildfile: build.xml does not exist! 

Build failed 

我们用ant脚本语言把一个项目整合或移动到某个目录下.而这些命令都下在一个build.xml的文件中,一般把这个build.xml文件放在项目的src目录下(项目不是太大),或者某个模块的src目录下(项目由多个模块构成,比较大)我在这里只是做了个小小的例子所以把 build.xml放在项目的src目录下.使用eclipse+myeclipse 新建一个web项目就不说了,接着在src目录下建一个build.xml文件,内容如下 

Java代码 

 

<?xml version="1.0" encoding="UTF-8"?>  

<project name="ant-project" default="run" basedir="../">  

     <!-- 这里的basedir是 工程的目录为根目录  

         一般basedir="."表示的是build.xml文件所在的相对目录为根目录即src   

     -->  

     <property name="src" value="src"/>  

     <property name="dest" value="/${basedir}/WebRoot/WEB-INF/classes"/>  

     <!-- 定义发布目录 把工程copy到tomcat的工作目录下-->  

     <property name="webApp" value="E:\apache-tomcat-5.5.26\webapps\ant-project"/>  

     <echo message="init ..." />  

     <!-- =================================   

           target: init                

          ================================= -->  

     <target name="init">      

         <mkdir dir="${dest}"/>   

         <delete dir="${src}/classes"></delete>  

     </target>   

     <!-- =================================   

               target: run                

              ================================= -->  

     <!-- 编译class文件-->  

     <target name="compile" depends="init">  

     <!-- <javac srcdir="${src}" destdir="/${basedir}/WebRoot/WEB-INF/classes"></javac> -->  

     </target>   

       

     <target name="run" depends="compile" description="description">  

         <!--除了class文件外,其他文件拷贝到tomcat目录下-->  

         <copy todir="${webApp}" overwrite="true">  

             <fileset dir="${basedir}/WebRoot" excludes="**/*.class"/>  

         </copy>  

         <!--将class文件打包,放到/WEB-INF/lib目录下-->  

         <jar destfile="${webApp}/WEB-INF/lib/test.jar">  

             <fileset dir="/${basedir}/WebRoot/WEB-INF/classes">  

                 <include name="**/*.class" />  

             </fileset>  

         </jar>  

           

     </target>  

 

 </project>  

 

<?xml version="1.0" encoding="UTF-8"?> 

<project name="ant-project" default="run" basedir="../"> 

<!-- 这里的basedir是 工程的目录为根目录 

一般basedir="."表示的是build.xml文件所在的相对目录为根目录即src 

--> 

<property name="src" value="src"/> 

<property name="dest" value="/${basedir}/WebRoot/WEB-INF/classes"/> 

<!-- 定义发布目录 把工程copy到tomcat的工作目录下--> 

<property name="webApp" value="E:\apache-tomcat-5.5.26\webapps\ant-project"/> 

<echo message="init ..." /> 

<!-- ================================= 

          target: init              

         ================================= --> 

    <target name="init">    

        <mkdir dir="${dest}"/> 

    <delete dir="${src}/classes"></delete> 

    </target>

<!-- ================================= 

          target: run              

         ================================= --> 

<!-- 编译class文件--> 

<target name="compile" depends="init"> 

<!--<javac srcdir="${src}" destdir="/${basedir}/WebRoot/WEB-INF/classes"></javac> --> 

</target>

    <target name="run" depends="compile" description="description"> 

    <!--除了class文件外,其他文件拷贝到tomcat目录下--> 

        <copy todir="${webApp}" overwrite="true"> 

            <fileset dir="${basedir}/WebRoot" excludes="**/*.class"/> 

        </copy> 

    <!--将class文件打包,放到/WEB-INF/lib目录下--> 

        <jar destfile="${webApp}/WEB-INF/lib/test.jar"> 

            <fileset dir="/${basedir}/WebRoot/WEB-INF/classes"> 

                <include name="**/*.class" /> 

            </fileset> 

        </jar> 

    </target> 

</project> 

 

下面简单的解释下这个文件 

1.每个build文件都包含一个project标签.name属性指项目的名称,可以随你自己取.default指默认要执行的target.basedir顾名思义是工作的根目录. 

2.<property>可以理解为我们写程序时的变量.name是变量的名称 value是变量的值,在下面的脚本要用到这个变量时需要使用${name}方式调用 

3</target>标签是build.xml文件的核心标签.里面主要是写一些你要做的操作然后依次按照你写好的依赖关系逐步执行target. name属性是target的名称,depends属性是指,当前这个target执行时必须先把depends对应的target执行(如果depends对应的target没有执行)如果depends对应的target已执行了,则直接执行当前的target 

4.<javac>就是java中的编译命令.srcdir是指需要编译的java文件的目录.destdir是指编译后的class文件存放的目录 

5<copy>这里的两个属性应该很好理解,todir是copy的目标目录 ,overwrite表示是否覆盖.<fileset>文件集合.dir属性表示被copy的源文件目录.excludes表示除开什么文件类型之外的文件 

6<jar>打成jar包 可以象上面那样写也可以象这样写<jar jarfile="${${webApp}/WEB-INF/lib/test.jar}" basedir="${dest}"/>.jarfile表示生成的jar的文件,basedir表示class文件所在的目录. 

当然ant脚本并没有这么简单.要写出一个好的ant脚本,部署一个庞大的项目,需要写出复杂的ant脚本,那是需要我们自己去在项目中运用才能有那种能力的.这只是个入门的小例子.写得不好的地方请大家多多提意见.下面是工程附件

 

出处:http://lijiang.iteye.com/blog/319650

分享到:
评论

相关推荐

    apache-ant-1.6.5-bin.zip_ ant 1.6.5_ant_ant-1.6.5_apache ant win

    Apache Ant 是一个开源的构建工具,广泛用于Java项目构建,由Apache软件基金会开发。这个"apache-ant-1.6.5-bin.zip"文件是Ant的1.6.5版本的二进制发行版,适合在Windows操作系统上使用。Ant是基于Java的,它的主要...

    ant.jar下载

    org.apache.tools.ant.Main org.apache.tools.ant.Task org.apache.tools.bzip2.CRC org.apache.tools.ant.Target org.apache.tools.ant.Project org.apache.tools.zip.ZipFile org.apache.tools.zip.ZipLong ...

    开发工具 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-1.9.6...

    ant ant ant ant

    "Ant ant ant antant ant ant antant ant ant ant" 这个描述可能是在强调Ant在项目构建过程中的重复性和不可或缺性,暗示着它在工程中的频繁使用和核心地位。 Ant的设计理念是“一切都是XML”,它通过XML格式的构建...

    Axure AntDesign元件库

    Axure AntDesign元件库是一款专为Axure设计的高质量组件集合,它旨在帮助原型设计师快速构建基于AntDesign设计系统的Web应用界面。AntDesign是阿里巴巴开源的一款著名前端UI框架,以其优雅、直观、高效的特性广受...

    ANT+协议 VS2015源文件

    ANT+协议是一种无线通信协议,主要用于运动健康和健身设备之间的数据传输。该协议由Garmin公司开发,并在开放源码的基础上推广,使得不同厂商的设备能够无缝共享数据,如心率、速度、距离等运动参数。VS2015源文件指...

    AntDesign3.9Axure组件

    《AntDesign3.9Axure组件:原型设计的利器》 在互联网产品开发流程中,原型设计是一个至关重要的环节,它能清晰地呈现产品的功能结构和交互方式,为后续的开发工作提供明确的方向。AntDesign3.9Axure组件正是这样一...

    mac下ant打包android

    在给定的文件中,`apache-ant-1.9.4-bin.zip`是Ant的一个版本,你需要解压并将其添加到系统路径中,这样命令行就可以识别`ant`命令了。安装完成后,确保你的环境配置正确,包括Android SDK和相关的环境变量(如`...

    apache-ant-1.9.16-bin.zip

    Apache Ant 是一个开源的构建工具,广泛用于Java项目管理,它是Apache软件基金会的产品之一。Ant以其XML为基础的构建文件(build.xml)而著名,这种文件定义了构建过程中的任务序列,使得开发人员能够自动化编译、...

    ant-design-demos

    "ant-design-demos" 是一个基于Ant Design框架的示例集合,主要展示了Ant Design的各种组件和功能在实际应用中的使用方式。Ant Design是一款由阿里集团开发的高质量React UI库,它提供了一系列美观、易用且具有企业...

    Ant design axure设计库

    **Ant Design Axure设计库详解** Ant Design是一个广泛使用的开源UI设计框架,源自阿里巴巴集团,专为构建高效、稳定且具有良好用户体验的Web应用而设计。它提供了丰富的组件库,覆盖了网页界面设计的各个方面,...

    apache-ant-1.10.13-bin

    Apache Ant 1.10.13-bin是Apache Ant的一个二进制分发版本。Apache Ant是一个由Apache软件基金会提供的Java库与命令行工具,主要用于自动化软件编译、测试、部署等步骤,尤其在Java环境中的软件开发中广泛应用。其...

    ant1.9包下载

    Apache Ant是Java开发中不可或缺的构建工具,它以其灵活性、可扩展性和跨平台特性而闻名。标题中的"ant1.9包下载"指的是Apache Ant 1.9系列的版本,这是该工具的一个重要里程碑,提供了许多增强的功能和修复了已知...

    apache-ant-1.9.16-bin.tar.gz

    Apache Ant 是一个由Apache软件基金会开发的Java库和命令行工具,其设计目的是驱动构建过程。这个工具的名字“Ant”来源于“蚂蚁”,象征着它在软件工程中的小而有力的角色,能够处理各种复杂的构建任务。在Java开发...

    apache-ant-1.9.9.zip

    Apache Ant 是一个开源的构建工具,广泛用于Java项目,它基于XML来定义构建过程,使得构建脚本具有可读性强、可复用性高的特点。标题中的"apache-ant-1.9.9.zip"表明这是一个包含Apache Ant 1.9.9版本的压缩文件,...

    apache-ant-1.6.0-bin.zip_ant 1_ant 1.6_ant 1.6.0_ant-1.6.0_apach

    标签中的"ant_1", "ant_1.6", "ant_1.6.0", "ant-1.6.0"和"apache-ant-1.6"都指的是Apache Ant的不同版本,1.6.0是其中的一个稳定版本,发布于2003年,提供了许多改进和新特性,比如支持JUnit 3.8,对ivy依赖管理...

    apache-ant-1.9.6的jar包

    Apache Ant 是一个开源的构建工具,它主要用于Java项目构建、自动化任务执行,如编译、打包、测试和部署。在Java开发中,Ant以其XML格式的构建文件(build.xml)著称,允许开发者定义项目构建的步骤和依赖关系。...

    Ant Design Library 3.0 Axure 组件库

    《Ant Design Library 3.0 与 Axure 组件库详解》 Ant Design Library 3.0 是一款专为Axure设计的组件库,旨在帮助设计师高效、精准地构建高质量的原型。Ant Design,源自阿里巴巴的前端框架,以其优雅的设计风格和...

    ANT文件详解 ant介绍 ANT 命令

    ### ANT文件详解:深入理解ANT及其在项目构建中的应用 #### Ant的概念与起源 Ant,全称为Apache Ant,是一款开源的、跨平台的项目构建工具,最初由James Duncan Davidson开发,现归属于Apache软件基金会Jakarta...

    apache-ant-1.10.5.rar

    Apache Ant是Java开发中的一个构建工具,用于自动化项目构建过程,比如编译、打包、测试等任务。在标题中提到的"apache-ant-1.10.5.rar"是一个包含Ant 1.10.5版本的压缩文件。这个版本的Ant是在2019年发布的一个稳定...

Global site tag (gtag.js) - Google Analytics