码迷,mamicode.com
首页 > 编程语言 > 详细

开发使用tomcat生产使用weblogic造成jar包冲突如何解决?

时间:2018-07-21 00:12:15      阅读:329      评论:0      收藏:0      [点我收藏+]

标签:tom   lang   工程   错误   instance   方式   出现   3.0   int   

问题描述
开发时新增了jar包,当将增量包部署到测试服务器后启动应用出现如下错误提示:
java.lang.LinkageError: loader constraint violation: loader (instance of weblogic/utils/classloaders/ChangeAwareClassLoader) previously initiated loading for a different type with name "org/w3c/dom/TypeInfo"
注:开发使用tomcat,测试服务器使用weblogic。
错误原因
weblogic自带的jar包与项目的jar包冲突。
报错信息
在项目工程中随便一个类文件下,把org/w3c/dom/TypeInfo改成org.w3c.dom.TypeInfo,查看这个jar的信息:(Crtl+TypeInfo)。找到冲突的jar包(xmlbeans-2.3.0.jar)。

 技术分享图片

 

解决方案(三种)
1.删除项目工程下jar包

技术分享图片

 

因为项目的weblogic.xml配置是优先加载项目下的jar包,所以删除项目工程下的xmlbeans-2.3.0.jar 包,然后 重新部署 或 重启应用。
[weblogic@dfjk-test ~/sbin]$ sh redeploy.sh Mobileproj

 技术分享图片

2.删除weblogic下的 相关的 xmlbean jar包

不建议用这种方式,因为有可能其他项目在用weblogic下的这个jar包,而且查找weblogic下的jar包冲突信息也比较费时。

3.配置weblogic.xml
删除优先加载的项目jar的配置或是设置改为false,不建议使用,因为可能其他jar包夜存在冲突。

 技术分享图片

 

开发使用tomcat生产使用weblogic造成jar包冲突如何解决?

标签:tom   lang   工程   错误   instance   方式   出现   3.0   int   

原文地址:https://www.cnblogs.com/xyhero/p/9344592.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!