我正在开发一个 grails 应用程序,并一直在尝试将其部署到 glassfish 。但是,在部署期间,我收到以下错误:
从服务器日志:
[#|2013-04-16T07:53:21.540-0400|INFO|glassfish3.1|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=91;_ThreadName=Thread-1;|2013-04-16 07:53:21,540 [admin-thread-pool-7720(2)] ERROR context.ContextLoader - Context initialization failed
org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing XML document from ServletContext resource [/WEB-INF/applicationContext.xml]; nested exception is **java.lang.NoSuchMethodError: org.slf4j.spi.LocationAwareLogger.log(Lorg/slf4j/Marker;Ljava/lang/String;ILjava/lang/String;[Ljava/lang/Object;Ljava/lang/Throwable;)V**
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:420)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:342)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:310)
……</p>
在我的系统类路径中,我有以下文件:slf4j-api-1.5.6.jar、slf4j-api-1.5.6.jar、slf4j-log4j12-1.5.6.jar。
我认为问题在于 Grails 正在尝试从 slf4j 1.6 加载方法(我在 Grails 2.1.0 上)。我希望 Grails 使用它的 webapps 类路径,而不是使用系统类路径。
我该怎么做呢 ?