Gradle 从buildscript获取设置对象
我正在尝试从根项目的构建脚本访问设置对象 原因是我想在settings.gradle文件中定义一个列表,它将是一个子项目列表,类似于: 设置。渐变Gradle 从buildscript获取设置对象,gradle,settings,project,Gradle,Settings,Project,我正在尝试从根项目的构建脚本访问设置对象 原因是我想在settings.gradle文件中定义一个列表,它将是一个子项目列表,类似于: 设置。渐变 projectNames = ['prjA', 'prjB'] 希望执行以下操作: build.gradle(根项目) 然后在build.gradle中访问它以执行各种任务,例如将这些名称解析为URL以进行git克隆。然而,我似乎找不到一种方法来声明在这两个脚本之间可见的任意groovy对象。注:我可能希望该列表与项目名称相关,但不等于项目名称。我
projectNames = ['prjA', 'prjB']
希望执行以下操作:
build.gradle(根项目)
然后在build.gradle中访问它以执行各种任务,例如将这些名称解析为URL以进行git克隆。然而,我似乎找不到一种方法来声明在这两个脚本之间可见的任意groovy对象。注:我可能希望该列表与项目名称相关,但不等于项目名称。我想问题归结为在这两个文件之间共享POGO和访问设置对象
我是Gradle的新手。没有办法从构建脚本获取
设置
对象。但是,这两个脚本共享一个gradle
对象,您可以使用该对象在设置脚本(例如gradle.ext.foo=“bar”
)中设置一个额外属性,并在构建脚本(例如println gradle.foo
)中读取该属性。如果在
已加载和评估设置,您可以注册生命周期关闭或侦听器。
一个很好的起点是方法Gradle#settingsEvaluated(Closure)
它将设置对象作为闭包参数提供
projectNames = settings.projectNames
// Use projectName in tasks