我想在任务之间设置简单的依赖关系。
我的build.gradle
apply plugin: 'java'
sourceCompatibility = 1.8
version = '1.0'
repositories {
mavenCentral()
}
task('Second', dependsOn: 'First') {
println "Second"
}
task('First') {
println "First"
}
因此,我希望First
而不是Second
。
但我得到了:
$ gradle build
Second
First
:compileJava UP-TO-DATE
:processResources UP-TO-DATE
:classes UP-TO-DATE
:jar UP-TO-DATE
:assemble UP-TO-DATE
:compileTestJava UP-TO-DATE
:processTestResources UP-TO-DATE
:testClasses UP-TO-DATE
:test UP-TO-DATE
:check UP-TO-DATE
:build UP-TO-DATE
我做错了什么? 谢谢你的帮助。
答案 0 :(得分:11)
仍然是同样的错误..您处于配置阶段。向任务添加操作,一切都会好的。这将有效:
apply plugin: 'java'
sourceCompatibility = 1.8
version = '1.0'
repositories {
mavenCentral()
}
task('Second', dependsOn: 'First') << {
println "Second"
}
task('First') << {
println "First"
}
这是一个配置阶段:
task t1 {
println "t1"
}
配置阶段的代码在操作之前执行。使用<<
(leftShift)运算符添加操作。
task t1 << {
println "t1"
}
Here是文档。
<<
只是被覆盖的运算符do doLast
方法。没有它,它将是:
apply plugin: 'java'
sourceCompatibility = 1.8
version = '1.0'
repositories {
mavenCentral()
}
task('Second', dependsOn: 'First') {
doLast {
println "Second"
}
}
task('First') {
doLast {
println "First"
}
}
我还建议您阅读this博文。