Grails 1.3.4 / Terracotta 3.5.1:部署.war文件失败

问题描述

|| 我们有一个与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中排除什么? 谢谢, 伊拉克利斯     

解决方法

        运行
grails dependency-report
,并检查哪些jar依赖于SFL4j Jar。 对我来说,这个罐子在后面很疼。对于在glassfish 3.1.1上进行部署,我遇到了同样的问题。我通过创建应用程序战争解决了此问题,并用war文件中的jar替换了玻璃鱼安装中的sfl4j jar。     

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...