我试图在我的插件中注册一个bean,但是该bean的类(实现)是可配置的。

在我的TestGrailsPlugin.groovy文件中:

def doWithSpring = { 
    userListener("${ConfigurationHolder.config.userListenerClass}") 
} 

但这不起作用!我该怎么办,我想应该是一件容易的事。但没有发现任何地方!

干杯

请您参考如下方法:

您可以使用GrailsApplication的classloader动态加载该类:

def doWithSpring = { 
   def clazz = application.classLoader.loadClass(application.config.userListenerClass) 
   userListener(clazz) 
} 

还要注意,我使用的是 application.config而不是holder类-在2.0中不推荐使用holder,并且在以后的版本中将删除它们。


评论关闭
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!