исключение, когда инициализация кэша приводит к сбою "grails run-app" - PullRequest
0 голосов
/ 23 ноября 2018

В моем приложении 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, он содержит обе следующие зависимости:

  • ehcache-2.9.0.jar
  • ehcache-core-2.4.8.jar

Основываясь на рекомендациях в этом выпуске , я исключил транзитивную зависимость ehcache-core в BuildConfig

runtime (":hibernate:3.6.10.18") { 
  excludes "ehcache-core" 
}

Если перестроить WARehcache-core JAR исключено , но при запуске grails run-app я по-прежнему получаю ту же ошибку при запуске.Я подозреваю, что причиной проблемы являются зависимости ehcache, но я не могу понять, какой JAR мне следует использовать.

1 Ответ

0 голосов
/ 28 ноября 2018

Обновление до спящего режима 3.6.10.19, похоже, решило эту проблему.При создании WAR включаются следующие зависимости ehcache:

  • ehcache-2.9.0.jar
  • hibernate-ehcache-3.6.10.Final.jar
...