我很简单build.gradle
(或任何build.gradle
具有的任务println
)
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'
}
运行任务时将评估这段代码。<<
与doLast
在Task的对象上调用方法完全相同。您可以添加许多操作。
编辑 我也强烈建议您阅读此博客文章。
我有代码: 年级4.5.1对此警告为 但是link没有给我任何可以替换它的提示,因为我不能仅仅设置任务依赖项,比如dependsOn或FinalizdBy--它不是从其他任务调用的,而是从构建的末尾调用的。
我有一个文件,看起来像这样 wsimport任务从wsdl文件生成所需的一些java文件。生成需要一些时间,所以我不希望每次构建jar或编译程序时都执行它。 wsclean任务旨在当wsdl发生更改时使用。 首先,我运行wsimport任务并确认文件生成正确,它们就是! 但是现在,当我运行gradle jar时,生成的文件被删除了。为什么? 当我注释掉wsclean任务时,jar任务成功地继续。为
我正在从事一个spring boot项目,以自动化与gradle的集成测试。我最近开始在一家新企业工作,我的同事们按如下方式运行集成测试:在构建中。gradle文件有一个集成测试任务 启动任务后,应用程序开始在指定端口运行,然后打开postman,导入集合并运行测试。 我的工作是找到一种方法来跳过额外的点击,即自动运行邮递员集合。第一个想法是使用postman-run gradle插件,但由于企业
谁有办法修好它?只是随机的...此处为完整stacktrace:
今天在Android Studio中,我重建了这个项目,我得到了这个错误。该项目在重建前很好。我没有更改代码中的任何内容。 这是一种错误吗?谢谢
我想写一个Gradle任务,在我所有的子项目中共享。此任务在调用它的子项目中查找所有其他类型为“GenerateMavenPom”的任务,并执行这些任务。 通过这样做,我的子项目可以定义他们想要的任何Maven发布,我可以使用“gradle GenerateMavenPomFiles”等单个任务执行gradle来创建pom.xml,而不需要知道每个子项目中的单个发布类型。为什么?因为Maven插件