zoukankan      html  css  js  c++  java
  • Ant基础知识1

    1.Ant简介
    Apache Ant是一个将软件编译/测试/部署等步骤联系在一起加以优化的一个构建工具,常用于java环境中的软件开发。Ant的默认配置文件是build.xml。
    对java语言的支持比较好。
     
    2.Ant的优势
    跨平台性:Ant是纯java语言编写的,所以具有很好的跨平台性。
    操作简单:Ant是由一个内置任务和可选任务组成的。Ant运行时需要一个xml文件(构建文件)。
    语法清晰:和 make 比较 (C 语言)
    功能强大:当需要开发一些ant插件的时候,会发现更多的功能。
     
    3.Ivy
    Ivy是一个跟踪管理项目直接依赖关系的工具。Ivy具有很好的灵活性和可配置性,使其可以适应各种不同的依赖管理和构建过程要求;虽然Ivy作为依赖管理工具,其可以与Apache Ant进行紧密集成,在依赖管理中充分利用Ant提供的强大任务功能。Ivy是一个开源项目,它提供了很多强大的功能,但是最受欢迎和最有用的特性是它的灵活性/与ant集成/传递依赖管理。
    ivy.xml :
    <ivy-module version="2.0">
        <info organisation="wfth" module="wfth.alm" />
        <dependencies>
            <dependencies org="org.apache.commons" name="common-collections4" rev="4.0" />
        </dependencies>
    </ivy-module>
    ant的build.xml中project加上属性   xmlns:ivy="antlib:org.apache.ivy.ant"
    在target中使用 <ivy:retrieve/>下载依赖的jar包
     
    4.使用Ant
    Ant的默认配置文件是build.xml,可以通过配置build.xml执行ant任务
    ant命令格式 ant [options] [target ...]
    执行build.xml脚本文件中名为dist的target  ant -f build.xml dist
    执行默认脚本文件,即build.xml的dist target  ant dist
    执行默认脚本文件默认target ant
     
    5.build.xml结构
     
    6.ant的antcall任务 运行一个ant目标
    属性:
    (1)target:在AntCall任务中target属性的作用是指定要被调用执行的target,通过名称指定这个target属性是必需的。
    值得注意的是,当通过AntCall任务调用的target存在依赖的target(depends中指定了target),则depends属性中被
    指定的target也会被执行。
    (2)inheritAll:用于指定是否继承当前的属性。默认为true,代表被调用的target可使用这些属性。
    (3)inheritRefs:用于指定是否覆盖reference属性或者是否建立一个对当前reference属性的引用。在默认的情况下,AntCall任务不会
    覆盖reference属性,除非把inheritRefs属性设为true,默认为false。
    <antcall target="A" />
     
    7.ant的fileset任务
    fileset是一个嵌套元素(在其他任务元素中嵌套,比如copy)
    <fileset dir="${server.src}" casesensitive="yes">
        <include name="**/*.java" />
        <exclude name="**/*Test*"/>
    </fileset>
    从一个“根目录”开始搜索的一组文件
    通过patternsets和selectors
    可以作为文件处理的task的子元素
    可以定义并被引用
     
    8.ant的path任务
    path定工程依赖的jar包
    例:
    <path id="project.class.path">
        <pathelement location="${jdk.home}/jre/lib/rt.jar"/>
        <pathelement location="${jdk.home}/lib/tools.jar"/>
        <pathelement location="${jdk.home}/lib/servlet-api.jar"/>
        <pathelement location="${jdk.home}/lib/jsp-api.jar"/>
        <pathelement location="${weblogic.lib}/weblogic.jar"/>
        <fileset file="${lib}/*.jar"/>
    </path>
     
    9.ant的taskdef任务
    Taskdef任务通过执行java类来创建一个用户定制的任务
    例:
    <taskdef name="任务名" classname="java类" />
    <taskdef name="wldeploy" classname="weblogic.ant.taskdefs.management.WLDeploy" classpathref="project.class.path"/>
     
  • 相关阅读:
    HDU 2414 Chessboard Dance (力模拟)
    hdu2571命
    【玩转微信公众平台六】 构建新浪SAEserver
    【CTO辩论】移动创业大军:谁斗争or变更代理
    Swift语言iOS开发:CALayer十则示例
    小编辑 Java 中十进制和十六进制的相互转换
    RGB与HSB之间的转换公式
    YUV / RGB 格式及快速转换算法
    光学基础知识:白光、颜色混合、RGB、色彩空间
    关于HSL和HSV颜色空间的详细论述
  • 原文地址:https://www.cnblogs.com/xhj123/p/9863635.html
Copyright © 2011-2022 走看看