Groovy 在build.gradle中定义全局变量和函数

Groovy 在build.gradle中定义全局变量和函数,groovy,gradle,Groovy,Gradle,是否有一种方法可以在build.gradle中定义全局变量,并使它们可以从任何地方访问 我的意思是这样的 def variable = new Variable() def method(Project proj) { def value = variable.value } def methodA() {} def methodB() { methodA() } 因为这样它告诉我它找不到属性。 我还想对方法做同样的事情。 我的意思是这样的 def variable = new V

是否有一种方法可以在
build.gradle
中定义全局变量,并使它们可以从任何地方访问

我的意思是这样的

def variable = new Variable()

def method(Project proj) {
    def value = variable.value
}
def methodA() {}
def methodB() { methodA() }
因为这样它告诉我它找不到属性。 我还想对方法做同样的事情。 我的意思是这样的

def variable = new Variable()

def method(Project proj) {
    def value = variable.value
}
def methodA() {}
def methodB() { methodA() }

使用额外的属性

ext.propA = 'propAValue'
ext.propB = propA
println "$propA, $propB"

def PrintAllProps(){
  def propC = propA
  println "$propA, $propB, $propC"
}

task(runmethod) << { PrintAllProps() }
阅读更多关于

您应该能够从函数调用函数,而无需执行任何特殊操作:

def PrintMoreProps(){
  print 'More Props: '
  PrintAllProps()
}
结果:

More Props: propAValue, propAValue, propAValue

“无处不在”是指源代码中的无处不在?
ext
名称空间是您所需要的