我们有一个运行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
我知道Terracotta3.5.1和Grails使用不同版本的SLF4J,这其中存在一些冲突。到底应该从BuildConfig中排除什么?
谢谢,
伊拉克利斯
发布于 2011-08-23 09:21:30
运行grails dependency-report并检查哪些Jar依赖于SFL4j Jar。
对我来说,这个罐子是一个很大的后背痛。在glassfish 3.1.1上部署时,我遇到了同样的问题。我通过创建应用程序的war并将glassfish安装中的sfl4j jar替换为war文件中的jar解决了这个问题。
https://stackoverflow.com/questions/6341612
复制相似问题