【发布时间】:2017-05-28 18:40:49
【问题描述】:
我的 WAS 中有 2 个 Web 应用程序。
- 我没有B的源代码。
- B 用来运行的 .jar 与从中加载扩展类加载器 jar 的路径相同。
因此,这个 jar 在项目 A 中被引用,它阻止我的应用程序运行,因为它与 B 使用的 JAR 冲突。
我无法从那里移动 .jar,因为我没有源代码来手动设置加载该文件的路径。
有没有办法告诉 Websphere 不要为特定的应用程序使用特定的 .jar?
提前致谢。
【问题讨论】:
-
你确定'B'通过路径明确引用了jar,还是只是从那里隐式加载类?您是否尝试过将其移动到隔离的共享库并从 WAS 配置中为“B”引用它?
-
是的,它明确引用了该路径:/,您对隔离库有什么想法? ,我现在正在阅读它
-
只有在将其作为快捷方式复制到该目录并通过正常的类加载使用时,才能将其移动到隔离的共享库。
-
该死的……还有什么想法吗??
-
我实际上认为隔离共享库方法可能会起作用,如果我正确理解场景的话。如果您需要 A 选择该 jar 的不同版本,您可以将其放入共享库中,将库设置为使用隔离的类加载器,并将其与 A 关联。这将导致 A 在共享中找到该 jar在尝试委托给扩展类加载器之前的库。
标签: java jar websphere classloader websphere-7