部署战争时,没有任何问题。在运行时,面临java.lang.LinkageError异常。
例外详情:
Failed to define class javax.wsdl.extensions.soap12.SOAP12HeaderFault in Module
"abc.war:main" from Service Module Loader: java.lang.LinkageError: loader
constraint violation: loader (instance of org/jboss/modules/ModuleClassLoader)
previously initiated loading for a different type with name
"javax/wsdl/extensions/soap12/SOAP12HeaderFault"
如何检查哪些jar发生冲突以及在哪些类加载器中发生冲突?
堆栈:Jboss 6,Java 7
答案 0 :(得分:0)
在JBOSS 6中,WAR部署被视为单个模块。 WEB-INF / lib目录中的类与类相同 在WEB-INF / classes目录中。战争中打包的所有课程将 装有相同的类加载器。
WAR 数据包中的问题。您可以在WAR中使用 mvndependency:tree 命令查看所有依赖关系。如果有两个或更多不同的版本,则应删除其中之一。 如果软件包中没有冲突,则jboss可能加载了与您的 SOAP12HeaderFault 版本不同的版本。您可以使用 jboss-deployment-structure.xml 排除相关的依赖性。
transferAllTo