java - 如何解决此 Weblogic 间歇性 java.lang.LinkageError?理解其含义并解决它的步骤是什么?

标签 java exception weblogic classloader linkage

我抛出了间歇性链接错误:(这基本上是我拥有的所有信息)

java.lang.LinkageError loader constraint violation: 
  when resolving field 'service' of the class loader instance of 
  java/net/FactoryURLClassLoader) of the referring class 
  org/apache/axis/client/Stub, and the class loader (instance of
  weblogic/utils/classloaders/ChangeAwareClassLoader) 
  for the field's resolved type, java/xml/rpc/Service, 
  have different class objects for that type

或者以更易读的方式

  • 异常: java.lang.LinkageError

    • 字段: 服务
    • CL 实例: java.net.FactoryURLClassLoader
    • 引用类: org.apache.axis.client.Stub
    • 第二个 CL 实例: weblogic.utils.classloaders.ChangeAwareClassLoader
    • 字段的解析类型: java.xml.rpc.Service

这是否意味着我加载了 2 个版本的 java.xml.rpc.Service?是这样吗?怎么会这样呢?有什么方法可以解决吗?

最佳答案

Does this mean that I have 2 versions of java.xml.rpc.Service loaded? Is that so?

是的。

How can that happen?

当您有两个类加载器都加载同一个类时,就会发生这种情况。在您的情况下,类加载器是不同 ClassLoader 类的实例:

    java.net.FactoryURLClassLoader

    weblogic.utils.classloaders.ChangeAwareClassLoader

what is the way to resolve it?

我不是 Weblogic 用户,但理论上的解决方案是将包含相关类的 JAR 文件放入上述两个类加载器的共同祖先类加载器的类路径中。

关于java - 如何解决此 Weblogic 间歇性 java.lang.LinkageError?理解其含义并解决它的步骤是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9997212/

相关文章:

java - 在 JavaFX 中为 Canvas 创建一个 "shadow"层?

java - 如何从 MethodArgumentNotValidException 类中提取字段名称和错误消息?

当数据库中存在记录时查询 AuditEntity 时出现 javax.persistence.EntityNotFoundException

java - 如何合并多个pdf

java - Spring post Rest无法解析对象中的对象

java - 仅具有通用 "fix"的 Java 代码库的自动化 `catch (Exception e)`

android - 从SavedInstanceState获取自定义类型的列表时获取IllegalStateException

weblogic - 我的应用程序如何访问在 Weblogic 管理控制台中配置的 keystore ?

java - 使用 wlfullclient.jar 在 WebLogic 10.3.4 上部署已安装的应用程序

linux - 杀死 webloigc pid 和运行 stopWeblogic.sh 之间有什么区别