Osgi 如何让SpringDynamicModules 2.x在ApacheFelixKaraf上工作?
我们开始在一个项目中使用ApacheFelixKaraf,并利用Blueprint服务 现在,我想使用Spring动态模块来访问高级DI功能和测试特性。问题是我还没有弄清楚如何让SpringDM2.x在Felix上运行 安装了spring和spring dm功能:Osgi 如何让SpringDynamicModules 2.x在ApacheFelixKaraf上工作?,osgi,springsource-dm-server,apache-karaf,apache-felix,Osgi,Springsource Dm Server,Apache Karaf,Apache Felix,我们开始在一个项目中使用ApacheFelixKaraf,并利用Blueprint服务 现在,我想使用Spring动态模块来访问高级DI功能和测试特性。问题是我还没有弄清楚如何让SpringDM2.x在Felix上运行 安装了spring和spring dm功能: karaf@root> features:list State Version Name Repository [installed ] [2.5.6.SEC01] spring
karaf@root> features:list
State Version Name Repository
[installed ] [2.5.6.SEC01] spring karaf-1.6.0
[installed ] [1.2.0 ] spring-dm karaf-1.6.0
[uninstalled] [1.6.0 ] wrapper karaf-1.6.0
[uninstalled] [1.6.0 ] obr karaf-1.6.0
[installed ] [1.6.0 ] http karaf-1.6.0
[uninstalled] [1.6.0 ] war karaf-1.6.0
[uninstalled] [1.6.0 ] webconsole karaf-1.6.0
[installed ] [1.6.0 ] ssh karaf-1.6.0
[installed ] [1.6.0 ] management karaf-1.6.0
但是为了使用Blueprint服务,我需要SpringDM2.x(至少根据Spring网站的说法,“对于Blueprint服务RI,使用2.x+版本”)
我知道可以,但据我所知,这需要在某个存储库中声明features.xml文件
我的问题是,是否有一种更简单的方法,也就是更集成的方法(通过Maven)好的,经过一些调查,我已经设法让捆绑包在Karaf上与Spring DM 2.0.0.M1一起工作 我解决这个问题的方法是通过定义一个功能xml描述符来添加一个额外的功能集(请参见):
<?xml version="1.0" encoding="UTF-8"?>
<features name="spring-features">
<feature name="spring-dm-2" version="2.0.0.M1">
<feature version="3.0.3.RELEASE">spring</feature>
<bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.cglib/2.1_3_6</bundle>
<bundle>mvn:org.springframework.osgi/spring-osgi-io/2.0.0.M1</bundle>
<bundle>mvn:org.springframework.osgi/spring-osgi-core/2.0.0.M1</bundle>
<bundle>mvn:org.springframework.osgi/spring-osgi-extender/2.0.0.M1</bundle>
<bundle>mvn:org.springframework.osgi/spring-osgi-annotation/2.0.0.M1</bundle>
<bundle>mvn:org.apache.karaf.deployer/org.apache.karaf.deployer.spring/2.1.0</bundle>
</feature>
</features>
请注意,这是可行的,但会带来一些丑陋的堆叠痕迹——我希望在Karaf用户列表/Spring用户的帮助下,我们能够摆脱这些痕迹。您答案中的链接已断开。请将其拆下或更换为可用的。
features:addurl /path/to/spring-dm-feature.xml
features:install spring-dm-2