为什么gradle运行所有JavaExec任务?

时间:2019-02-11 08:24:36

标签: gradle

我在build.gradle

中定义了两个任务
task a(type: JavaExec) {
}

task b(type: JavaExec) {
}

当我执行任务a时,b也将运行。这正常吗?

gradle a

1 个答案:

答案 0 :(得分:0)

我正在与他人分享自己的经验。

我是groovy / gradle的新手。

我试图实现的目标是使用共享函数来获取项目属性。

def projectProperty = {
    if (!project.hasProperty(it)) {
        throw new Exception...
    }
    return project.getProperty(it);
}

task a(type: JavaExec) {
    do some with projectProperty(a);
}

task b(type: JavaExec) {
    do some with projectProperty(b);
}

我这样改变了。

task a(type: JavaExec) {
    if (project.hasProperty('a')) {
        do some with projectProperty('a');
    }
}

task b(type: JavaExec) {
    if (project.hasProperty('b')) {
        do some with projectProperty('b');
    }
}