博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Ant内置任务之subant
阅读量:2172 次
发布时间:2019-05-01

本文共 1380 字,大约阅读时间需要 4 分钟。

一、概述

        subant是Ant内置任务,用于对所有子构建调用指定的target,是ant对于批量项目执行的扩展,如果此任务调用其所在的文件,此任务必须在target中。ant1.6起subant在内部使用。subant通过目录设置来执行不同目录下的构建,提供两种不同的选择:1)使用genericantfile属性对于不同的基本目录执行相同的构建文件 /somepath/otherpath/build.xml,在这种情况下,基本目录分别设置为每个子目录的路径;2)使用antfile属性,运行不同目录下同名的构建文件,在这种情况下不会设置基本目录,可以在每个构建文件中指定。

二、属性

        antfile:构建文件名,与目录一起使用,默认为build.xml,如果设置了genericantfile属性,则忽略此属性。

        buildpath:用于查找子项目的构建路径。
        buildpathref:构建路径的引用。
        failonerror:产生错误时,构建是否失败,或者继续执行。
        genericantfile:构建文件路径,与目录一起使用。
        inheritall:如果为true,会将所有属性传递到新的project,默认为false。如果为false,那么只有命令行中的参数会被传递到新的porject中。无论true还是false传入新project的属性都会覆盖新的project中的属性,默认为false。
        inheritrefs:如果为true,会将所有引用传递到新的project,默认为false。
        output:写入ant输出的文件名。
        target:要执行的target名称。
        verbose:在进入/退出每个子构建路径时启用/禁用日志信息,默认为false。

        支持的嵌套元素:

        基于文件系统的:ant1.7之前只支持fileset、dirset和filelist。
        dirset:将目录添加到隐式构建路径中。添加到构建路径中的目录没有特定的顺序,如果要保证顺序,则应使用filelist。
        filelist:将文件添加到隐式构建路径中。添加到构建路径中的文件是有顺序的,filelist可以引用不存在的文件或目录。
        fileset:将文件添加到隐式构建路径中。添加到构建路径中的目录没有特定的顺序。
        property:这些属性与命令行中定义的属性等效。无论inheritall为true还是false,这些属性都会被传递。refid指向的是调用项目而不是被调用的。
        propertySet:设置一组属性。
        buildpath:创建嵌套的构建路径,并将其添加到隐式构建路径中。
        buildpathelement:创建嵌套的构建路径元素,并将其添加到隐式构建路径中。
        target:ant1.7起,可以使用嵌套target元素替代target来执行多个target,这些target将执行,就像Ant被单个的target调用,而它的依赖项就是指定顺序的target,具有一个name属性用于指定要调用的target名称。
        

三、简单示例

        file/build.xml

this is file\build.xml,basedir is ${basedir}

        build.xml

转载地址:http://wxezb.baihongyu.com/

你可能感兴趣的文章
Intellij IDEA使用(十四)—— 在IDEA中创建包(package)的问题
查看>>
Redis学习笔记(四)—— redis的常用命令和五大数据类型的简单使用
查看>>
Win10+VS2015编译libcurl
查看>>
Windows下使用jsoncpp
查看>>
Ubuntu下测试使用Nginx+uWsgi+Django
查看>>
Windows下编译x264
查看>>
visual studio调试内存泄漏工具
查看>>
开源Faac实现PCM编码AAC
查看>>
Windows下wave API 音频采集
查看>>
借船过河:一个据说能看穿你的人性和欲望的心理测试
查看>>
AndroidStudio 导入三方库使用
查看>>
Ubuntu解决gcc编译报错/usr/bin/ld: cannot find -lstdc++
查看>>
解决Ubuntu14.04 - 16.10版本 cheese摄像头灯亮却黑屏问题
查看>>
解决Ubuntu 64bit下使用交叉编译链提示error while loading shared libraries: libz.so.1
查看>>
Android Studio color和font设置
查看>>
Python 格式化打印json数据(展开状态)
查看>>
Centos7 安装curl(openssl)和libxml2
查看>>
Centos7 离线安装RabbitMQ,并配置集群
查看>>
Centos7 or Other Linux RPM包查询下载
查看>>
运行springboot项目出现:Type javax.xml.bind.JAXBContext not present
查看>>