在build.gradle
中我们可以定义变量,如:
def libVersion='someVersion'
我们可以使用-PlibVersion=otherVersion
不幸的是,这个命令行选项似乎不会影响build.gradle
中定义的局部变量。有没有办法从命令行覆盖这些?请注意,出于某些原因,我不想创建settings.gradle
或gradle.properties
个文件。
答案 0 :(得分:47)
以下是一个例子:
ext.greeting = project.hasProperty('greeting') ? project.getProperty('greeting') : 'hello'
task greet << {
println greeting
}
如果您运行gradle greet
,则会打印hello
。
如果您运行gradle -Pgreeting=welcome greet
,则会打印welcome
。