Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我很想知道这个答案。我有一个问题,比如我有 3 个 jar A、B 和 C。现在 jar A 需要导入 jar C 的 1.1 版,而 Jar B 需要导入 jar C 的 1.5 版。
那么,根据我的理解,是不是所有这些 jar 文件都将由单独的类加载器加载。因此,在加载后 OSGi 将如何处理具有特定 jar 的不同版本场景。
此方案需要部署四个捆绑包,A、B 和 C-1.1 和 C-1.5。
A 被解析(使用它自己的类加载器),它将从包 C-1.1 加载任何依赖类。
B 被解析(使用它自己的类加载器)它将从包 C-1.5 加载任何依赖类。
这允许两个版本的 C 能够在同一个应用程序中使用,因为它们不会由同一个类加载器加载,因此不会与同名的类存在冲突。