gpt4 book ai didi

java - Weblogic 服务器 Guava NoSuchMethodError

转载 作者:行者123 更新时间:2023-11-30 06:06:31 24 4
gpt4 key购买 nike

我正在尝试在 weblogic 服务器上部署一个带有 war 文件的 web 项目。但是我遇到了上面的错误,

java.lang.NoSuchMethodError: com.google.common.util.concurrent.MoreExecutors.directExecutor()Ljava/util/concurrent/Executor;
at com.google.common.eventbus.EventBus.<init>(EventBus.java:138)

我尝试了最新和最旧版本的 Guava 。在最旧的版本中,我遇到了事件总线错误(旧版本中未定义此方法)。在最新版本中,我再次遇到同样的错误。

我该如何解决这个问题?

编辑:它在我的编辑器 (IntelliJ) 中运行得很清楚,当我尝试在 weblogic 服务器上运行它时,我在部署中遇到了这个错误。

更新:

我刚刚在我的 WEB-INF 路径中添加了一个 weblogic.xml 文件,如上所示。无需任何其他配置。感谢@luc14n0,问题为我解决了

<?xml version="1.0" encoding="UTF-8"?>
<weblogic-web-app xmlns="http://xmlns.oracle.com/weblogic/weblogic-web-app"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.oracle.com/weblogic/weblogic-web-app http://xmlns.oracle.com/weblogic/weblogic-web-app/1.0/weblogic-web-app.xsd">

<container-descriptor>
<prefer-web-inf-classes>true</prefer-web-inf-classes>
</container-descriptor>

</weblogic-web-app>

最佳答案

Weblogic 12c (12.1.3) 在 Oracle/Middleware/Oracle_Home/wlserver/modules/com.google.common_1.2.0.0_11-0-2.jar 中附带了自己的 Guava 依赖项

通过告诉 WebLogic 您更喜欢使用自己的版本,可以避免加载错误库的冲突。

如果是 EAR,请将以下内容添加到 application.xml:

<prefer-application-packages>
<package-name>com.google.common.*</package-name>
</prefer-application-packages>

如果是 WAR,请将以下内容添加到 weblogic.xml:

<container-descriptor>
<prefer-web-inf-classes>true</prefer-web-inf-classes>
</container-descriptor>

关于java - Weblogic 服务器 Guava NoSuchMethodError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43884623/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com