如何在 WebSphere 中解决 jar 包冲突

如何在 WebSphere 中解决 jar 包冲突,第1张

你好,

具体分析引起jar包冲突的情况,主要有三种:

多个应用程序间jar包冲突:多个应用程序间由于使用了共享jar包的不同版本而造成jar包版本冲突。

应用程序中多个Web模块间jar包冲突:同一个应用程序内部,不同的Web模块间同时使用一个jar包的不同版本而造成jar包版本冲突。

应用程序中同一个Web模块内jar包冲突:同一个应用程序内部,同一个Web模块内,由于需要同时使用同一个jar包的两个版本而造成的jar包冲突

本部分根据这三种jar包冲突的情况,讨论三种解决jar包冲突的办法,并具体讨论三种解决办法的实现步骤和适用情况:

共享库方式解决jar包冲突:主要解决应用程序间的jar包冲突问题

打包到Web模块中解决jar包冲突:主要解决应用程序中多个Web模块间jar包冲突问题

命令行运行方式解决jar包冲突:主要解决应用程序中同一个Web模块内jar包冲突问题

共享库方式解决jar包冲突

在WAS v5中,提供了一种很好的机制,使得jar包只存在于需要这个jar包的应用程序的类加载器的路径上,而其它的应用程序不受它的任何影响,这就是共享库(Shared library)。共享库可以用在应用服务器级别和应用程序级别,使用应用程序级别的共享库

大型的基于

WebSphere

的项目开发中,同一个

WebSphere

Application

Server(以下简称

WAS)上会部署多个应用程序,而这多个应用程序必然会共用一些

jar

包,包括第三方提供的工具和项目内部的公共

jar

等。把这些共用的

jar

包提取出来在多个应用程序之间共享,不仅可以统一对这些

jar

包进行维护,同时也提高了

WAS

的性能。但是随着应用的不断扩大,新的应用程序的不断增加,新的应用程序会希望使用一些更高版本的共享

jar

包,而由于系统运行维护的需要,老的应用程序仍然希望用老版本的共享

jar

包,这样就必然造成了共享

jar

包的版本冲突。jar

包版本冲突问题是在大型应用项目的开发中经常遇到的问题,本文试图从

WebSphere

的类加载器入手,讨论几种在不同情况下解决

jar

包冲突问题的办法。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11526436.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存