[我最初在websphere论坛上发布的这个bot没有看到及时的响应。我重新张贴在这里有稍微内容]websphere classloader在加载slf4j时给出java.lang.LinkageError LoggerFactory
的问题
我添加了一个罐子(称之为“foo.jar中”)给我们的企业应用程序(即“的.ear”),创建清单条目等,并发现,当我的EJB实例化FooClient时,websphere在org.slf4j.LoggerFactory上抛出java.lang.LinkageError
我已将类加载器调试添加到跟踪,没有发现太多。我希望看到“在哪里实际上找到了slf4j类”。这里是条目:
[9/24/14 16:23:01:417 CDT] 00000067 CompoundClass > loadClass org.slf4j.LoggerFactory [email protected][app:yourappServer] Entry
[9/24/14 16:23:01:418 CDT] 00000067 CompoundClass < loadClass org.slf4j.LoggerFactory java.lang.LinkageError: org.slf4j.LoggerFactory Exit
我检查了我的was8目录,发现slf4j jar的各种副本/版本。
/plugins
/osgiappbundles/com.ibm.ws.osgi.applications/aries/slf4j-api-1.5.6.jar
/slf4j-api-1.5.6.jar
/profiles/AppSrv01
/installedConnectors/activemq-rar-5.9.1.rar/slf4j-api-1.7.5.jar
/wstemp
/appdepl14769b0c2de/slf4j-api-1.7.5.jar3472682177251273594.tmp
/appdepl14769b0c2de/slf4j-api-1.7.5.jar7922145899030561292.tmp
另一名开发者告诉我:“你会不会能够使用foo.jar中”因为我们需要把“PARENT_LAST”这不是为这个项目目前的选项。
附加上下文
- 的Websphere 8.0.0.7
- RAD 9
问题
java.lang.LinkageError的:这是一个“类加载器问题'或'错误版本的课堂'问题?我的“错误版本的类”问题的经验我通常会看到“NoSuchMethod”错误,而不是实例化异常。
还有其他办法吗?
更新
予读出的位有关的共享库和“分离的类加载器”,这似乎是溶液。但是由于某些原因,我的RAD/Eclipse UI似乎破坏了,因为当我将共享库与应用程序或模块关联时,它不会“保存”。它随后消失。提前
感谢
给我们相关的代码,你是否在1.7.6中使用了1.5.6 slf4j api中不存在的新东西? – 2014-09-25 16:03:20