Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
gradle脚本属性扩展能否在不同脚本之间共享_Gradle_Android Gradle Plugin - Fatal编程技术网

gradle脚本属性扩展能否在不同脚本之间共享

gradle脚本属性扩展能否在不同脚本之间共享,gradle,android-gradle-plugin,Gradle,Android Gradle Plugin,如果存在build.gradle文件,如下所示: ... apply from: 'Other.gradle' task hello { project.ext.hello = "hello" } 还有其他的。格雷德尔: task getHello { println project.ext.hello } 我得到一个错误,说: 无法在额外属性扩展上获取属性“hello”,因为它不存在 有没有办法在脚本之间共享属性扩展?尝试设置ext.hello,然后让任务更新它 ==bu

如果存在build.gradle文件,如下所示:

...
apply from: 'Other.gradle'

task hello {
    project.ext.hello = "hello"
}
还有其他的。格雷德尔:

task getHello {
    println project.ext.hello
}
我得到一个错误,说:

无法在额外属性扩展上获取属性“hello”,因为它不存在


有没有办法在脚本之间共享属性扩展?

尝试设置ext.hello,然后让任务更新它

==build.gradle

ext {
  hello = null
}

apply from: 'Other.gradle'

task hello {
  doLast {
    hello = "hello"
  }
}
==Other.gradle

task getHello {
  doLast {
    println hello
  }
}

如果您确实希望能够设置任务的信息,还可以在任务上使用ext并将其作用域设置为任务。如果您正在实现一个更大的插件,您可以创建一个扩展并在任务上设置它。

尝试设置ext.hello,然后让任务更新它

==build.gradle

ext {
  hello = null
}

apply from: 'Other.gradle'

task hello {
  doLast {
    hello = "hello"
  }
}
==Other.gradle

task getHello {
  doLast {
    println hello
  }
}
如果您确实希望能够设置任务的信息,还可以在任务上使用ext并将其作用域设置为任务。如果你正在实现一个更大的插件,你可以创建一个扩展并在任务中设置它