Gradle - 如何从子项目中获取任务输出
Gradle - How to get task output from subproject
我是 Gradle 的新手。我有一个这样的示例项目结构:
rootA/
├── build.gradle
├── settings.gradle
└── subA
└── build.gradle
在subA
项目中,有一个任务,调用,goInsideSubA()
这个任务可以return一个字符串(类似) "this is inside subA project"
编辑:这是我的示例上下文:
//subA/build.gradle:
task goInsideSubA() {
def string = "this is inside subA project"
}
// rootA/build.gradle
task showInsideSubA() {
doLast {
// how can I get the string from :subA:goInsideSubA task here
}
}
// settings.gradle
include ':subA'
我的问题是如何为 showInsideSubA()
中的任务 showInsideSubA()
获取 string "this is inside subA project" 18=] 重用项目?
谢谢
我找到了一个解决方案,使用 "task properties":
//subA/build.gradle:
task goInsideSubA() {
ext {
myString = "this is inside subA project"
}
}
// rootA/build.gradle
task showInsideSubA() {
doLast {
println tasks.getByPath(':subA:goInsideSubA').myString
}
}
// settings.gradle
include ':subA'
结果:
$ gradle -q showInsideSubA
> this is inside subA project
我是 Gradle 的新手。我有一个这样的示例项目结构:
rootA/
├── build.gradle
├── settings.gradle
└── subA
└── build.gradle
在subA
项目中,有一个任务,调用,goInsideSubA()
这个任务可以return一个字符串(类似) "this is inside subA project"
编辑:这是我的示例上下文:
//subA/build.gradle:
task goInsideSubA() {
def string = "this is inside subA project"
}
// rootA/build.gradle
task showInsideSubA() {
doLast {
// how can I get the string from :subA:goInsideSubA task here
}
}
// settings.gradle
include ':subA'
我的问题是如何为 showInsideSubA()
中的任务 showInsideSubA()
获取 string "this is inside subA project" 18=] 重用项目?
谢谢
我找到了一个解决方案,使用 "task properties":
//subA/build.gradle:
task goInsideSubA() {
ext {
myString = "this is inside subA project"
}
}
// rootA/build.gradle
task showInsideSubA() {
doLast {
println tasks.getByPath(':subA:goInsideSubA').myString
}
}
// settings.gradle
include ':subA'
结果:
$ gradle -q showInsideSubA
> this is inside subA project