我有使用Spring 3.2.18编写的用Java7编写的遗留应用程序,它运行在Karaf 2.4.4和Spring-DM上。我计划迁移到Spring、Java和Karaf的更新版本。
我知道spring-dm不受支持,我应该迁移到Blueprint,但我不确定是否可以像spring-dm那样在Spring上下文中加载OSGI bean。Karaf 2.4.4支持它吗?
我不想过多地更改源代码,仍然使用我现在使用的@Autowired。
作为第一步,我计划用blueprint替换spring-dm,下一步是将Spring3升级到Spring4。这是有效的方法吗?
发布于 2017-07-23 04:53:00
Karaf默认使用Aries Blueprint,它根本不支持spring bean,但是您可以使用blueprint-maven-plugin,它从带注释的类创建blueprint.xml文件。
但是如果你的代码对Spring有很强的依赖性,比如SpringMVC提供servlets,你可以使用Gemini Blueprint,它是Spring-DM的继承者,支持Spring4.3.x版本,但我必须警告你,让它在karaf上工作可能会很棘手,特别是如果你使用SpringMVC的话。
https://stackoverflow.com/questions/45255680
复制相似问题