返回介绍

使用 Ant 插件 - 使用 Ant 任务和 Ant 类型的构建

发布于 2020-07-06 13:40:58 字数 3303 浏览 856 评论 0 收藏 0

16.1.使用 Ant 任务和 Ant 类型的构建

在构建脚本中, Ant 属性是由 Gradle提供的. 这是一个用于参考的 AntBuilder 实例. AntBuilder 用于从构建脚本访问 Ant 任务, 类型和属性. 下面的例子解释了从 Ant 的 build.xml 格式到 Grooy 的映射.

你可以通过调用 AntBuilder 实例的方法执行 Ant 任务. 你可以使用任务名称作为方法名, 比如, 可以通过调用 anto.echo() 任务执行 Ant echo 任务. Ant 任务属性通过 Map 参数传递给方法. 下面是一个 echo 任务的例子, 注意我们也可以混合使用 Groovy 代码和 Ant 任务标记, 这点个功能非常强大.

例 16.1.使用 Ant 任务

build.gradle

  1. task hello << {
  2. String greeting = 'hello from Ant'
  3. ant.echo(message: greeting)
  4. }

gradle hello 的输出

  1. >\> gradle hello
  2. >:hello
  3. >[ant:echo] hello from Ant
  4. >
  5. >BUILD SUCCESSFUL
  6. >
  7. >Total time: 1 secs

你可以添加嵌套元素添加到一个封闭的 Ant 任务的内部. 定义嵌套元素跟定义任务的方式相同, 通过与调用我们要定义的元素名相同的方法.

例 16.3.添加嵌套元素到一个Ant任务

build.gradle

  1. task zip << {
  2. ant.zip(destfile: 'archive.zip') {
  3. fileset(dir: 'src') {
  4. include(name: '**.xml')
  5. exclude(name: '**.java')
  6. }
  7. }
  8. }

你可以像访问任务一样访问 Ant type,只需要将 type 名作为方法名即可. 该方法调用返回的 Ant 数据类型,可以直接在构建脚本中使用.下面的例子中,我们创建了一个ant path对象,然后遍历他的内容.

例 16.4.使用 Ant 类型

build.gradle

  1. task list << {
  2. def path = ant.path {
  3. fileset(dir: 'libs', includes: '*.jar')
  4. }
  5. path.list().each {
  6. println it
  7. }
  8. }

更多关于 AntBuilder 的信息可以参考 ‘Groovy in Action’8.4 或者Groovy Wiki.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文