gpt4 book ai didi

gradle 的新插件 dsl 语法

转载 作者:行者123 更新时间:2023-12-03 04:58:59 28 4
gpt4 key购买 nike

我目前正在学习 gradle 构建工具,特别是 new plugins DSL syntax ,在文档中。在链接中,作者提到

enter image description here

我知道对于每个 build.gradle文件,gradle 隐式创建类型为 Project 的对象供程序员使用以及在 build.gradle 中声明的每个变量/方法文件隐式附加到 Project对象,所以我查找了Project class API documentation对于名为 plugins 的方法接受一个闭包作为它的第一个参数,但不存在。

我了解较新的插件 dsl 语法旨在取代传统的 apply()方法机制。但是为什么我找不到 plugins Project 中的方法类的文档?

最佳答案

项目接口(interface)继承自 PluginAware 接口(interface),这是处理“插件”功能的地方:参见方法规范 https://docs.gradle.org/current/javadoc/org/gradle/api/plugins/PluginAware.html#getPlugins--

但实际上,plugins { } 语法与 Project 类中的属性或方法无关:它是一种由 Gradle 以特殊方式处理的脚本 block ,如 buildScript block 。您可以在官方文档中找到有关此内容的详细信息:https://docs.gradle.org/current/dsl/org.gradle.plugin.use.PluginDependenciesSpec.html

注意:我建议您查看 DSL 文档而不是 Javadoc(或者除了 Javadoc):我认为它提供了更好的描述,可以更好地描述您在编写构建脚本时可以使用的内容,并附有示例。例如,“插件”属性记录在那里:
https://docs.gradle.org/current/dsl/org.gradle.api.Project.html#org.gradle.api.Project:plugins

问候。

关于gradle 的新插件 dsl 语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51511666/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com