Java 在一个应用程序中使用两个版本的Spring Framework?

Java 在一个应用程序中使用两个版本的Spring Framework?,java,spring,maven,spring-mvc,Java,Spring,Maven,Spring Mvc,我正在使用SpringV3开发我的应用程序。现在我包含了另一个模块(使用Maven),它又依赖于SpringV4。虽然我的应用程序和这个模块工作得很好,但当分别启动时,合作就失败了 是否有可能以某种方式将我的应用程序与此模块组合,从而将两个不同版本的Spring捆绑到生成的应用程序中?OSGi是一种替代方法,可将您隔离类加载器,并允许在一个应用程序中使用同一库的不同版本。您可以开始学习它。将您的spring升级到版本4会更容易。事实并非如此。因为我的“动物园”也依赖于一个组件,它是在Spring

我正在使用SpringV3开发我的应用程序。现在我包含了另一个模块(使用Maven),它又依赖于SpringV4。虽然我的应用程序和这个模块工作得很好,但当分别启动时,合作就失败了


是否有可能以某种方式将我的应用程序与此模块组合,从而将两个不同版本的Spring捆绑到生成的应用程序中?

OSGi
是一种替代方法,可将您隔离
类加载器
,并允许在一个应用程序中使用同一库的不同版本。您可以开始学习它。

将您的spring升级到版本4会更容易。事实并非如此。因为我的“动物园”也依赖于一个组件,它是在SpringV3之上构建的。我明白了,所以你必须对你的应用程序类加载器进行某种隔离,分离库,我在不久前用jasper库做了这件事,我制作了一个句柄,它标识了它必须加载哪个版本的jasper libs。在同一个应用程序中,我使用了jasper 3.0.0、3.7.6和4,因为该应用程序非常庞大,客户端不会使用Spring 4支付转换费用。它几乎完全向后兼容客户端代码。@chrylis我正在尝试。但它深深地嵌入了依赖关系中。天哪