0

我们已经使用 ehcache.server.1.0.0.war 快一年了。

这周我们搬到了新电脑。我们复制了缓存并相应地更改了 ehcache.xml。

但是,新服务器现在没有启动。它抛出错误:

             SEVERE: WSSERVLET11: failed to parse runtime descriptor: java.lang.NoSuchMethodError: org.slf4j.helpers.MessageFormatter.format(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)Lorg/slf4j/helpers/FormattingTuple;
             java.lang.NoSuchMethodError: org.slf4j.helpers.MessageFormatter.format(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)Lorg/slf4j/helpers/FormattingTuple;
                             at org.slf4j.impl.JDK14LoggerAdapter.warn(JDK14LoggerAdapter.java:429)
                             at net.sf.ehcache.store.DiskStore.deleteIndexIfCorrupt(DiskStore.java:267)
                             at net.sf.ehcache.store.DiskStore.initialiseFiles(DiskStore.java:210)
                             at net.sf.ehcache.store.DiskStore.<init>(DiskStore.java:166)
                             at net.sf.ehcache.store.DiskStore.create(DiskStore.java:187)
                             at net.sf.ehcache.Cache.createDiskStore(Cache.java:1069)
                             at net.sf.ehcache.Cache.initialise(Cache.java:941)
                             at net.sf.ehcache.CacheManager.addCacheNoCheck(CacheManager.java:921)
                             at net.sf.ehcache.CacheManager.addConfiguredCaches(CacheManager.java:607)
                             at net.sf.ehcache.CacheManager.init(CacheManager.java:336)
                             at net.sf.ehcache.CacheManager.<init>(CacheManager.java:276)
                             at net.sf.ehcache.CacheManager.create(CacheManager.java:636)
                             at net.sf.ehcache.CacheManager.getInstance(CacheManager.java:657)
                             at net.sf.ehcache.server.soap.EhcacheWebServiceEndpoint.<init>(EhcacheWebServiceEndpoint.java:71)
                             at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
                             at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)

任何想法表示赞赏。

4

1 回答 1

0
 java.lang.NoSuchMethodError: org.slf4j.helpers.MessageFormatter.format(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)Lorg/slf4j/helpers/FormattingTuple;

当您的 jar 的 slf4j 版本错误时会发生此错误。仔细检查旧服务器上的所有 jar 版本/大小,并确保它们在新服务器上相同。

还有差异。jar 的版本可能在您的新应用服务器系统类路径中,这会干扰您的应用程序类路径。您应该在部署描述符中配置类加载顺序策略(它特定于您正在使用的应用服务器供应商)

于 2013-04-04T15:32:57.703 回答