我的项目结构看起来像
Root + subproj1
+ subproj2
在每个子项目中定义了自己的任务run(){}。 我要做的是运行:subproj1:run,:subproj2:从Root项目的运行任务并行运行。 我试过root项目的build.gradle
task run(){
def threads = 2
def tasks = [ ":subproj1:run", ":subproj2:run" ]
tasks.each {
new Thread(){
public void run(){
dependsOn it
}
}.start();
}
}
但它像
一样例外Exception in thread "Thread-12" org.gradle.api.UnknownProjectException:
Project with path ':subproj1:run' could not be found in root project 'ROOT'
我如何从根项目并行运行子项目的任务?
答案 0 :(得分:2)
使用gradle 2.1它应该开箱即用。一个解决方案是 - 像Perryn说的那样平行,或者你将org.gradle.parallel:true设置为你的gradle.properties。然后你应该能够运行" gradle run"在根项目中,两者都应该并行执行。
我还将未声明的项目耦合=失败放入gradle.properties以了解它们是否已耦合并且不能并行执行。
答案 1 :(得分:1)
您是否尝试过查看--parallel命令行选项?