我的build.gradle文件中包含以下代码:
task untarServer(type:Copy) {
from tarTree('build/libs/server.tar.gz')
into project.ext.tomcat + '../'
} << {
println 'Unpacked, waiting for tomcat to deploy wars ...'
sleep 10000
}
task deploy << {
tarball.execute()
untarServer.execute()
stopTomcat.execute()
startTomcat.execute()
}
除了untarServer之外,一切都很好用,看起来根本不会运行。 Untar基于documentation的示例。可能由于时间已晚,我做了些傻事,但我很想念它。我怎样才能解决这个问题?我在脑海里想到我可以放弃使用ant.untar,但如果可能的话,我想以原生的方式进行操作。
编辑:我怎么知道它没有运行?因为println语句从不显示,所以buld不会暂停10秒,并且tarball的内容不会显示在“into”位置。
答案 0 :(得分:0)
之前我没有看过} << {
语法;我将其更改为大括号内的doLast { ... }
或untarServer << {
(作为单独的语句)。此外,您永远不应该在任务上调用execute()
。它完全没有支持,坏事也会发生。相反,您应该建立任务关系(dependsOn
,mustRunAfter
,finalizedBy
)。