Gant:使用过滤进行复制

时间:2012-04-16 06:14:20

标签: filter copy gant

我有一个包含HTML文档的'doc'目录,每个HTML都包含应用程序版本和SVN版本的占位符:

Welcome to the ... V${version} r${buildNumber}

在我的Grails / Gant构建脚本中,我们创建了一个doc包,我们首先将doc目录复制到临时区域,然后再压缩它。我现在想用这样的值替换这些占位符(假设变量appVersionsvnRevision设置正确:

ant.mkdir(dir: "${baseDocDir}")
ant.copy(todir: "${baseDocDir}") {
   fileset(dir: "./src/main/doc", includes: '*.html')
   filterset {
     filter ( token : 'version' , value: appVersion )
     filter ( token : 'buildNumber' , value : svnRevision )
   }
}

副本有效,但不知道过滤器没有!

1 个答案:

答案 0 :(得分:1)

我现在可以自己回答这个问题。以下代码有效:

ant.copy(todir: "${baseDocDir}") {
  filterset(begintoken: "\${", endtoken: "}") {
    filter(token: "version", value: appVersion)
    filter(token: "buildNumber", value: svnRevision)
  }
  fileset(dir: "./src/main/doc/", includes: "**/*.html")
}