小编Rob*_*eer的帖子

Ant版本1.8.0中记录了classpath,path和pathelement的位置?

我正在查看Apache Ant版本1.8.0附带的文档,但无法找到记录类路径,路径和元素的位置.我找到了一个描述类似结构的路径的页面,但它没有列出这些的有效属性或嵌套元素.我在文档中找不到的另一件事是描述filelist,fileset,patternset和path之间的关系以及如何来回转换它们.例如,必须有一种更简单的方法来编译一个包中的那些类,同时删除包类和更新文档上的所有类依赖项.

<!-- Get list of files in which we're interested. -->
<fileset id = "java.source.set"
    dir     = "${src}">
  <include name = "**/Package/*.java" />
</fileset>

<!-- Get a COMMA separated list of classes to compile. -->
<pathconvert property = "java.source.list"
    refid             = "java.source.set"
    pathsep           = ",">
  <globmapper from = "${src}/*.@{src.extent}"
      to           = "*.class" />
</pathconvert>

<!-- Remove ALL dependencies on package classes. -->
<depend srcdir = "${src}"
    destdir    = "${build}"
    includes   = "${java.source.list}"
    closure    = "yes" />

<!-- Get a …
Run Code Online (Sandbox Code Playgroud)

ant build.xml

44
推荐指数
1
解决办法
5万
查看次数

Ant的扩展点if/unless属性有什么用?

在Ant构建文件中定义扩展点时,可以使用if或unless属性使其具有条件.在目标上if /除了防止它的任务被运行.但是一个扩展点没有任何条件运行的任务,那么条件是做什么的呢?我的想法(在Ant 1.8.0中证明是不正确的)是它会阻止任何扩展扩展点的任务被运行.以下是显示问题的示例构建脚本:

<project name = "ext-test"
    default   = "main">

  <property name = "do.it" value = "false" />

  <extension-point name = "init"/>
  <extension-point name = "doit" depends = "init" if = "${do.it}" />

  <target name = "extend-init" extensionOf = "init">
    <echo message = "Doing extend-init." />
  </target>

  <target name = "extend-doit" extensionOf = "doit">
    <echo message = "Do It! (${do.it})" />
  </target>

  <target name = "main" depends = "doit">
    <echo message = "Doing main." />
  </target>

</project>
Run Code Online (Sandbox Code Playgroud)

使用命令:

ant -v …
Run Code Online (Sandbox Code Playgroud)

ant

6
推荐指数
1
解决办法
2093
查看次数

标签 统计

ant ×2

build.xml ×1