【发布时间】:2016-05-28 03:52:52
【问题描述】:
我有以下代码:
jar.doLast {
def isFailed = jar.state.failure
def proc
if (isFailed) {
proc = ['notify-send', "-u", "critical", "Build ${project.name} failed"].execute()
} else {
proc = ['notify-send', "Build ${project.name} finish"].execute()
}
proc.waitForProcessOutput(System.out, System.err);
}
当我第一次运行gradle --daemon jar 时,它会发送通知,当我再次运行它时,jar.doLast 没有运行,我认为这是因为 gradle 自动跳过了 jar,因为 src 与旧 src 相同,所以如何确保 jar.doLast 在第二种情况下运行?
【问题讨论】:
-
jar { output.upToDateWhen {false} }
-
但是如果
jar任务没有运行,你为什么要发送任何通知?