【轻分析】轻分析报错,提示 java.lang.NoClassDefFoundError: q/datasource/io/AbstractOutputStream

栏目:eas cloud知识作者:金蝶来源:金蝶云社区发布:2024-09-22浏览:1

【轻分析】轻分析报错,提示 java.lang.NoClassDefFoundError: q/datasource/io/AbstractOutputStream

问题描述:

查看轻分析,报错了,提示:

Caused by: java.lang.NoClassDefFoundError: q/datasource/io/AbstractOutputStream

报错截图和日志如下:


分析解答:

EAS启动时,Spring会扫描所有的Controller,我们的Controller里面进行初始化的时候间接依赖了第三方包qing-storage.jar的类,需要同时更新轻分析补丁及公共领域BOS_PUBLIC的补丁。但因BOS_PUBLIC的补丁会被很多业务补丁依赖,所以往往会因为更新了其它领域的补丁升级了BOS_PUBLIC的qing-storage分析包,但是没有安装对应的轻分析补丁,导致出现上述报错。

为了彻底解决该问题,目前我们已经把qing-storage放到轻分析补丁PT151285(QING,发布日期:2021-06-03中的,但是这个jar包之前因为是放在BOS_PUBLIC公共领域中的所以也放在BOS合并补丁PTM155096(发布日期:2020-12-07)中了。轻分析补丁PT151285不会依赖PTM155096,所以建议:

1、先安装PTM155096,再安装PT151285或这之后发布的轻分析补丁;

2、如果先安装了PT151285,再去安装PTM155096,PTM155096中的qing-storage较旧会覆盖轻分析的该jar包,也会出现上述截图中的报错。

解决方案:

1)安装PT151285这个补丁之后发布的新的轻分析补丁;

2)重新安装PT151285,方法:管理控制台-补丁管理页面,勾选PT151285后按F9将补丁假卸载(补丁会变成未安装状态),然后再去重新安装这个补丁。重新安装后,观察下服务端server\lib\common\trd目录下这个qing-storage.jar的时间,如果还是PTM155096补丁中这个jar包的时间(2020-4-1),那说明没有成功。可以用轻分析补丁中的jar替换服务端路径下的这个包,再重启服务。

ps:直接替换jar包的方式,可能在服务启动的时候会提示“应用环境中存在非法组件”,如下图:

可以这样处理

1)修改 /eas/admin/config/record.properties,将其中参数isAlreadyGenerateComponentBase=true修改为isAlreadyGenerateComponentBase=false  

2)运行eas\admin目录下的stopserver.cmd(stopserver.sh),再运行admin.cmd(admin.sh)重启管理控制台,按提示重新生成基准文件并对实例进行重新部署。


另,PTM补丁和轻分析补丁包中的jar包位置如下:

【轻分析】轻分析报错,提示 java.lang.NoClassDefFoundError: q/datasource/io/AbstractOutputStream

问题描述:查看轻分析,报错了,提示:Caused by: java.lang.NoClassDefFoundError: q/datasource/io/AbstractOutputStream报错截图和日...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息