gpt4 book ai didi

Grails 和 Groovy 元类包名称约定

转载 作者:行者123 更新时间:2023-12-02 14:13:00 25 4
gpt4 key购买 nike

我希望能够根据此处定义的约定将我的元类放入包 groovy.runtime.metaclass using the delegating meta class .我已放置 MyClassMetaClassgroovy.runtime.metaclass.mypackage.具体类mypackage.MyClass{} .不幸调用 MyClass{}未被 MyClassMetaClass{} 拦截.也许这与 grails 的初始化方式有关..?

最佳答案

通过更改 BootStrap.groovy,可以在 grails 项目中使用委托(delegate)元类。

import org.codehaus.groovy.runtime.InvokerHelper
class BootStrap {

def init = { servletContext ->
def myMetaClass = new MyClassMetaClass(MyClass.class)
InvokerHelper.metaRegistry.setMetaClass(MyClass.class, myMetaClass)
}
def destroy = {
}
}

当然,这与实现问题中提到的委托(delegate)元类不同。

关于Grails 和 Groovy 元类包名称约定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11743582/

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