gpt4 book ai didi

gradle - 如何将 gradle 函数从 build.gradle 移动到插件中?

转载 作者:行者123 更新时间:2023-12-04 04:06:46 27 4
gpt4 key购买 nike

目前,我在多项目设置的顶级 build.gradle 中定义了一些实用程序函数,例如:

def utilityMethod() {
doSomethingWith(project) // project is magically defined
}

我想将此代码移动到一个插件中,这将使实用程序方法在应用该插件的项目中可用。我怎么做?它是一个project.extension吗?

最佳答案

这似乎可以使用:

import org.gradle.api.Plugin
import org.gradle.api.Project

class FooPlugin implements Plugin<Project> {
void apply(Project target) {
target.extensions.create("foo", FooExtension)
target.task('sometask', type: GreetingTask)
}
}
class FooExtension{
def sayHello(String text) {
println "Hello " + text
}
}

然后在客户端 build.gradle 文件中,您可以执行以下操作:
task HelloTask << {
foo.sayHello("DOM")
}

c:\plugintest>gradle -q HelloTask
Hello DOM

https://docs.gradle.org/current/userguide/custom_plugins.html

关于gradle - 如何将 gradle 函数从 build.gradle 移动到插件中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29177000/

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