【问题标题】:How to use in grails the 'classForName' for classes under src/groovy如何在 grails 中为 src/groovy 下的类使用“classForName”
【发布时间】:2017-01-31 02:38:21
【问题描述】:

为了获得一个带有字符串名称的类实例,我正在使用(在控制器中):

grailsApplication.getClassForName('className')

如果类在“grails-app”下,一切正常。但是当类在“src/main/groovy”下时代码返回null

有人知道我在 grails (3.1.8) 中是如何做到这一点的吗?

【问题讨论】:

  • 只要使用正则反射API和Class.forName()

标签: grails groovy


【解决方案1】:

要获取一个类(包括src/main/groovy中的类),可以使用

grailsApplication.classLoader.loadClass(classNameWithPackage)

要获取此类的新实例,您可以调用该类的newInstance() 方法。

所以,最后,这将解决您的问题。

grailsApplication.classLoader.loadClass(classNameWithPackage).newInstance()

我希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-01-30
    • 2011-02-04
    • 1970-01-01
    • 2016-02-22
    • 1970-01-01
    • 2014-08-18
    • 2012-05-25
    • 1970-01-01
    相关资源
    最近更新 更多