摇篮。将参数传递给依赖项目构建脚本

时间:2015-08-13 08:45:27

标签: gradle build.gradle

我有项目("后端")配置:

dependencies {
    compile project(':model') //I would like to pass some params into this being build.
    ...

其他项目("前端")配置非常相似:

dependencies {
    compile project(':model') //but from this project I will not pass params.
    ...

当我构建依赖项目模型时 - 我需要将参数传递给它的构建参数并在条件下执行某些操作。因此,对于需要子项目的所有项目,它将根据他们的需求进行构建。

更具体一点:当我建立"后退" - "模型"的项目应该运行一些任务,但是当我构建"前端"我没有。

是否可以强制清理子项目?

1 个答案:

答案 0 :(得分:5)

您可以轻松地从命令行或gradle.propertiesext中定义的属性传递参数。这是一个小项目:

<强> /build.gradle

ext {
    var = "alpha"
}

task hello {
    println "Name: $project.name"
    println "Var: $var"
    println "Param: $param"
    println "Prop: $prop"
}

<强> /gradle.properties

prop=gama

<强> /settings.gradle

project.name = 'foo'

include 'bar'

<强> /bar/build.gradle

task hello {
    println "Name: $project.name"
    println "Var: $var"
    println "Param: $param"
    println "Prop: $prop"
}

如果您运行gradle hello -Pparam=beta,则会打印:

Name: foo
Var: alpha
Param: beta
Prop: gama
Name: bar
Var: alpha
Param: beta
Prop: gama
:hello UP-TO-DATE
:bar:hello UP-TO-DATE