weblogic查看补丁版本报错 java.lang.NoClassDefFoundError, java.lang.ClassNotFoundException

在weblogic查看补丁版本时遇到错误:java.lang.NoClassDefFoundError和java.lang.ClassNotFoundException。问题源于补丁依赖的jar包缺失。通过检查MANIFEST.MF文件定位到所需jar包,并发现该jar包在某些环境中不存在。解决方案是对比不同weblogic主机的jar包,发现sha256不同,建议备份并重新安装weblogic。

**

weblogic查看补丁版本时报错: java.lang.NoClassDefFoundError,java.lang.ClassNotFoundException

**

问题详情

打补丁前,先查看目前的weblogic补丁版本

[weblogic@host bsu]$./bsu.sh  -prod_dir=/home/weblogic/Oracle/Middleware/wlserver_10.3 -status=applied -verbose -view
Exception in thread "Main Thread" java.lang.NoClassDefFoundError: com/bea/plateng/patch/Patch
Caused by: java.lang.ClassNotFoundException: com.bea.plateng.patch.Patch
        at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
Could not find the main class: com.bea.plateng.patch.Patch. Program will exit.

排查过程

通过查看MANIFEST.MF文件发现了这么一行:
Class-Path: …/…/modules/features/com.bea.cie.patch-client_3.3.0.0.jar
下面,我们来寻找这个jar 包。

[weblogic@host features]$ pwd
/home/weblogic/Oracle/Middleware/modules/features
[weblogic@host features]$ 
[weblogic@host features]$ ll | grep com.bea.cie.patch-client_3.3.0.0.jar
[weblogic@host features]$ 

这里要注意的是,不同的环境,可以路径不同,但 “modules/features” 是不变的。
同时,也发现其他weblogic服务器上存在的jar包,这台服务器上没有。好了,问题已经找到了,打补丁所依赖的jar包的缺失 最终导致了 java.lang.NoClassDefFoundError报错 和 java.lang.ClassNotFoundException报错。

解决方案

通过对比发现,不同的weblogic主机,同一个jar包,虽然名称一样,但是包的sha256不同。
为安全起见,解决方案是做好备份,重装weblogic ,哈哈。

希望抛砖引玉,大家有更好的解决方案欢迎留言!
写于 July 27, 2019,修改于July 28, 2019

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值