如何使用包含文件匹配的copySpec使用Gradle构建war文件
因此,这是可行的:如何使用包含文件匹配的copySpec使用Gradle构建war文件,gradle,Gradle,因此,这是可行的: war { filesMatching('**/index.jsp') { filter(org.apache.tools.ant.filters.ReplaceTokens, tokens: [ 'version' : version, ]) } } 但这并不是: def webappFilter = project.copySpec { filesMatching('**/index.jsp')
war {
filesMatching('**/index.jsp') {
filter(org.apache.tools.ant.filters.ReplaceTokens, tokens: [
'version' : version,
])
}
}
但这并不是:
def webappFilter = project.copySpec {
filesMatching('**/index.jsp') {
filter(org.apache.tools.ant.filters.ReplaceTokens, tokens: [
'version' : version,
])
}
}
war {
with webappFilter
}
显然,我做错了,但我不明白我到底错过了什么。有人能帮忙吗?我在复印机方面也遇到过类似的问题,格雷德就是不使用复印机。在尝试了许多变体之后,它只在向copySpec添加副本闭包时对我有效
def cs = copySpec {
copy {
from("readme.txt")
into("somefolder")
filter{String line -> line.replaceAll('a','b')}
}
}
task mycopy (type: Copy) {
with cs
}
希望这有帮助。这是可行的,但实际上它破坏了动态CopySpec的优势,因为您已经在CopySpec实例中定义了from和into。也没有最新的检查了。