`

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

分享到:
评论

相关推荐

    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下载与配置

    ant ant下载 ant配置ant ant下载 ant配置ant ant下载 ant配置

    Ant工具的使用及Ant介绍

    1,什么是ant ant是构建工具 2,什么是构建 概念到处可查到,形象来说,你要把代码从某个地方拿来,编译,再拷贝到某个地方去等等操作,当然不仅与此,但是主要用来干这个 3,ant的好处 跨平台 --因为ant是使用java实现...

    Axure AntDesign3.9.x ( Axure8及以上亲测有效)

    AntDesign3.9.x 企业级产品的设计体系,基于确定和自然的设计价值观上的模块化解决方案,让设计者和开发者专注于更好的用户体验。 如何在 Axure 里使用 Ant Design Library: 1. 打开 Axure 软件,找到 Libraries ...

    AntDesign蚂蚁金服APP移动端原型组件.rplib

    Ant Design 移动端设计规范,一个基于 Preact/React/React Native 的 UI 组件库,是 Ant Design 的移动规范的 React 实现,服务于蚂蚁及口碑无线业务。 image.png 特性 基于 Ant Design 移动设计规范。 规则化的...

    Element2.1.0、AntDesign3.9_AxureRP库、AntDesign RP库的视频教程

    1. Element_Components_v2.1.0.rplib 从element ui 官网下载的axure组件,可以直接导入到axure中进行使用。 ... 如果前端使用elementui , 那么我们使用axure的组件将会减少沟通成本,且...3.AntDesign RP lib使用教程.mp4

    替换文本文件中Ant表达式的Ant扩展任务

    kingspider.tools.ant.task.CopyWithReplace by Kingspider email: kingspider70s@hotmail.com 该程序为Ant的扩展任务,在拷贝文本格式的文件的同时替换文件中的Ant表达式,类似于 ${property.name},属性值来自于...

    apache-ant-1.7.1-src.zip_Apache Ant1.7_ant 1.7.1_ant1_apache ant

    Use the links below to download a source distribution of Ant from one of our mirrors. It is good practice to verify the integrity of the distribution files, especially if you are using one of our ...

    AntDesign蚂蚁金服Web_PC原型组件.rplib

    Ant Design 源自蚂蚁金服体验技术部的后台产品开发。在中后台产品设计中,通常有很多类似的页面和控件,不同的产品会出现不同的规范和实现,给设计师和工程师带来很多困扰和重复建设,降低企业后台的整体研发效率。...

    apache-ant-1.10.1-ant编译环境

    ant配置后提示不是内部命令也不是外部命令解决办法: 1、解压缩包。例如解压到E:\学习类\apache-ant-1.8.2, 2、配置环境变量。在系统环境变量中新建一个ANT_HOME 的变量,值为D:\apache-ant-1.10.1。在path 变量中...

    Ant 入门讲解视频

    Ant 在开源软件包和企业里面得到了广泛的应用, 这个视频就对 ant 进行了基本的讲解. 1. 手工编译运行项目 anttest; 2. ant.ppt 讲解; 3. 在 Eclipse 中使用 ant; 4. 手工使用 ant; 5. 在 Netbeans 中...

    jocky 混淆编译 ant

    一、jocky for ant 1. 将lib/jocky-ant.jar copy 至ANT_HOME/lib下。 2. 在ant配置文件中添加 3. 设置Jocky的一些基本属性,包括jocky.jar包的位置,以及混淆编译级别: 4. 当设置jocky的enable属性为true时,此时...

    ant配置ant配置

    ant配置ant配ant配置ant配置置

    ant 讲解ant 讲解ant 讲解ant 讲解

    ant 讲解ant 讲解ant 讲解ant 讲解ant 讲解ant 讲解ant 讲解ant 讲解ant 讲解ant 讲解ant 讲解ant 讲解ant 讲解ant 讲解ant 讲解ant 讲解

    ANT文件详解 ant介绍 ANT 命令

    ANT文件详解 ant介绍 ANT 命令

    ant design4.40 web组件库 ant design pro后台模板库(精细-完整)

    Ant Design 是基于 Ant Design 设计体系的 React UI 组件库,主要用于研发企业级中后台产品。 ant design4.40-web组件库 是基于Axure ,参考Ant Design 的样式而设计的一套模板库,是产品经理必备套件库,Ant Design...

    ant1.8.2(组件)

    1,什么是ant ant是构建工具 2,什么是构建 概念到处可查到,形象来说,你要把代码从某个地方拿来,编译,再拷贝到某个地方去等等操作,当然不仅与此,但是主要用来干这个 3,ant的好处 跨平台 --因为ant是使用java实现...

    Apache Ant入门教程

    Apache Ant 是一个基于 Java 的生成工具。据最初的创始人 James Duncan Davidson 介绍,这个工具的名称是 another neat tool(另一个整洁的工具) 的首字母缩写。 生成工具在软件开发中用来将源代码和其他输入文件...

Global site tag (gtag.js) - Google Analytics