0

parent_last 是否影响其他应用程序?我使用 parent_last 的应用程序是否受到其他应用程序的影响?

服务器设置为“多个类加载器”(每个应用程序 IIUC 一个)。

据我了解,这意味着所有类都是从应用程序加载的,对吗?

如果另一个应用程序加载存在于 websphere 扩展中的类,然后我的应用程序使用该类会发生什么。它会被重新加载,还是会使用来自父母的那个?(它可能与我的应用程序中的类不兼容)。

websphere手册说:

“通过指定首先使用本地类加载器加载的类(最后一个父类),您的应用程序可以覆盖父类加载器中包含的类,但如果您混合使用覆盖类和非覆盖类,此操作可能会导致 ClassCastException 或 LinkageErrors 。”

但我不明白这种潜在的风险。有人可以为此提供示例吗?

4

1 回答 1

1

由应用程序类加载器加载的类不能以任何方式干扰由其他应用程序加载的类,因为应用程序类加载器是相互隔离的。

您提供的引用警告库具有传递依赖项时可能发生的潜在问题。例如,您的应用程序使用依赖于 libraryB 的 libraryA。LibraryA 是应用程序服务器提供的某种“标准”库,因此您无需将其与应用程序打包在一起。然后,如果由于某种原因您需要在应用程序中包含 libraryB 并且它的版本与 libraryA 预期的版本不同,您可能会遇到不兼容的问题。

于 2013-10-10T07:00:35.403 回答