我有一个任务-从列表中删除文件,该列表存储在一个文件中。为此,我想使用Groovy脚本。在Ant中,我使用以下目标没有问题:
<delete failonerror="false" verbose="true">
<resourcelist >
<file file="/path/to/file"/>
</resourcelist>
</delete>
但是在Groovy脚本中导致错误:
ant.delete(
failonerror: "false",
verbose: "true",
ant.resourcelist(
ant.file(
file: "/path/to/file"
)
)
)
错误:The <resourcelist> type doesn't support nested text data ("/path/to/file").
如何配置Groovy跳过以从位于另一个文件中的列表中删除文件?
您使用了错误的语法,必须是(这里使用groovy任务):
<project>
<taskdef name="groovy" classname="org.codehaus.groovy.ant.Groovy"/>
<groovy>
ant.delete(failonerror: false, verbose: true) {
resourcelist {
file(file: '/path/to/file')
}
}
</groovy>
</project>
——在注释后编辑——
当使用groovy文件时,必须使用:
def ant = new AntBuilder()
ant.delete(failonerror: false, verbose: true) {
resourcelist {
file(file: '/path/to/file')
}
}