在我的Grails 2.5.4应用中,我安装了以下插件
compile ":cache:1.1.8"
runtime ":cache-ehcache:1.0.5"
运行grails run-app
时,在启动时出现以下错误
java.lang.NullPointerException
at grails.plugin.cache.ehcache.GrailsEhCacheManagerFactoryBean$ReloadableCacheManager.rebuild(GrailsEhCacheManagerFactoryBean.java:171)
at grails.plugin.cache.ehcache.EhcacheConfigLoader.reload(EhcacheConfigLoader.groovy:63)
at grails.plugin.cache.ConfigLoader.reload(ConfigLoader.groovy:42)
at CacheGrailsPlugin.reloadCaches(CacheGrailsPlugin.groovy:202)
at CacheGrailsPlugin$_closure3.doCall(CacheGrailsPlugin.groovy:158)
如果我构建WAR并查看lib
目录,则它包含以下两个依赖项:
根据this issue中的建议,我排除了ehcache-core
中的传递性BuildConfig
依赖项
runtime (":hibernate:3.6.10.18") {
excludes "ehcache-core"
}
如果我重建WAR,则排除ehcache-core
JAR ,但是运行grails run-app
时在启动时仍然出现相同的错误。我怀疑问题的原因是ehcache依赖关系,但我不知道应该使用哪个JAR。
答案 0 :(得分:2)
升级到休眠状态3.6.10.19似乎可以解决此问题。构建WAR时,包括以下ehcache依赖项: