gpt4 book ai didi

Grails 插件开发 - 覆盖域类

转载 作者:行者123 更新时间:2023-12-02 15:31:44 24 4
gpt4 key购买 nike

Grails 中的插件是模块化应用程序的好方法。文档建议覆盖应用程序中插件的工件,该插件使用此插件。

这真的是最好的方法吗?

我们通过例子来描述它:插件中定义了一个域类“org.User”。应用程序覆盖此域类。如果我使用“grails run-app”,则没有警告并且可以正常工作。但是 Eclipse (GGTS) 提示“类 org.User 的重复类定义无效”。对于某些开发人员来说,这并不重要,但我喜欢 IDE 帮助通过诸如“自动完成”之类的 stuf 进行编码。

最后,这两个类都被编译并放在 java 类加载器上。类的应用程序版本在插件版本之前加载。类解析器首先找到它,这就是它起作用的原因。如果我在这一点上错了,请纠正我。在一个类加载器中拥有一个类的两个版本真的是个好主意吗?

有哪些替代方案?

最佳答案

你可以这样做 Spring Security Core插件,提供User class 作为模板,因此使用此插件的应用程序可以选择创建自己的类或安装默认的 User 类。

插件用户模板为here ,并且负责在应用程序中创建它的脚本是 here .

您还需要一个配置值来了解要使用的类,并动态使用它。

P.S:有很好的安全插件,比如 Shiro 和 Spring Security,也许检查它们而不是自己创建更容易。

关于Grails 插件开发 - 覆盖域类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18209113/

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