我创建了一个Grails插件并在其中创建了一个名为Config
的域类:
package com.company.common
class Config {
String defaultTimeZone
String defaultLanguage
}
在另一个Grails项目中,我包含了插件,我在Bootstrap.groovy:
import com.company.common.Config
每次我尝试运行该项目时,都会收到此错误:
C:\ Code \ grails-app \ conf \ BootStrap.groovy:4:无法解析类com.company.common.Config
如果我在同一个Grails项目中拥有Config
域类,则它可以正常工作。如果我在插件项目中将其重命名为ProjectConfig
,它似乎也有效。
有谁知道为什么我不能在另一个项目中引用名为Config
的域类?
P.S。可以从主Grails项目访问插件项目中的所有其他域类,只有Config
类给我带来问题。
答案 0 :(得分:1)
Grails插件具有在打包插件时删除的特定文件(因此您可以使用它们进行测试)。您可以在此处找到列表Grails Plugins #Creating and Installing Plugins。为方便起见,这里是列表:
grails-app/conf/BootStrap.groovy
grails-app/conf/BuildConfig.groovy (although it is used to generate dependencies.groovy)
grails-app/conf/Config.groovy
grails-app/conf/DataSource.groovy (and any other *DataSource.groovy)
grails-app/conf/UrlMappings.groovy
grails-app/conf/spring/resources.groovy
Everything within /web-app/WEB-INF
Everything within /web-app/plugins/**
Everything within /test/**
SCM management files within **/.svn/** and **/CVS/**
虽然此列表不包含域类文件夹中的Config.groovy文件,但它可能会被捕获。值得检查一下Config.groovy文件是否被转移到打包的插件,或者你是否可以重命名该文件,这也是有用的。