微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

java – Gradle总是从任何任务中执行println

我有简单的build.gradle(或任何具有println的任务的build.gradle)
println GradLeversion.current().prettyPrint()

task task1{
    println 'task1 starting'
}

现在当我运行$gradle build时,我总是看到正在执行的任务或打印输出

task1 starting
:compileJava UP-TO-DATE
:processResources UP-TO-DATE
:classes UP-TO-DATE
:jar
:assemble
:compileTestJava UP-TO-DATE
:processtestResources UP-TO-DATE
:testClasses UP-TO-DATE
:test UP-TO-DATE
:check UP-TO-DATE
:build

BUILD SUCCESSFUL

Total time: 1.291 secs

为什么println里面的任务总是有输出

解决方法

如果您有以下代码
task task1 {
    println 'task1 starting'
}

您正处于任务的配置阶段.此阶段在脚本评估期间运行.如果您想在执行任务时打印某些内容您需要为任务添加操作.

看起来像:

task task1 << {
   println 'task1 action'
}

在运行任务时将评估此段代码. <<与在Task的对象上调用doLast方法完全相同.您可以添加许多操作.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐