2

我们有一个使用 Terracotta Ehcache 3.3 运行的 Grails (1.3.4) 应用程序。我们正在尝试将我们的 Terracotta 安装更新到最新的 3.5.1。我在 BuildConfig.groovy 中添加了这些行:


inherits("global") {
    // uncomment to disable ehcache
    // excludes 'ehcache'
    runtime 'net.sf.ehcache:ehcache-core:2.4.2'
    runtime 'net.sf.ehcache:ehcache-terracotta:2.4.2'
    runtime "org.terracotta:terracotta-toolkit-1.2-runtime:3.1.0"
  }

我能够构建 .war 文件,但是当我尝试部署它时,我得到:


SLF4J: The requested version 1.5.8 by your slf4j binding is not compatible with [1.6]
SLF4J: See http://www.slf4j.org/codes.html#version_mismatch for further details.
Jun 14, 2011 1:16:36 PM org.apache.catalina.core.StandardContext start
SEVERE: Error listenerStart
Jun 14, 2011 1:16:36 PM org.apache.catalina.core.StandardContext start
SEVERE: Context [/cooldeals-0.3.2] startup failed due to previous errors

我了解 Terracotta 3.5.1 和 Grails 使用不同版本的 SLF4J,并且存在一些冲突。从 BuildConfig 中究竟应该排除什么?

谢谢,
伊拉克利斯

4

1 回答 1

0

运行grails dependency-report并检查哪些 jar 依赖于 SFL4j Jar。

对我来说,这个罐子让我很痛苦。为了在 glassfish 3.1.1 上部署,我遇到了同样的问题。我通过创建我的应用程序的战争并用我的战争文件中的 jar 替换 glassfish 安装中的 sfl4j jar 来解决这个问题。

于 2011-08-23T01:21:29.937 回答