在哪里可以找到Spring 4的OSGi包?我检查了http://ebr.springsource.com/但是只能找到Spring 3.2.x并且Maven Central中的工件不是捆绑包。
澄清
我不是在寻找Spring DM或类似产品。我正在寻找“Spring Framework”JAR(spring-core,spring-beans,spring-context,...)作为OSGi包。我不是想在OSGi环境中创建应用程序上下文。我只需要OSGi环境中的(异常)类。
答案 0 :(得分:17)
Spring将 NOT 支持任何进一步的版本作为OSGi捆绑包。春季3.2.4已经停止了官方支持(尽管你可以找到3.2.5文件here,与Eclipse Forum中的陈述相矛盾)
来自Spring的Glyn Normington承认,在几个地方,请看这里:然而,有希望。在Karaf-dev列表中,可以看到他们打算在ServiceMix项目中支持spring库。整个帖子中的详细信息请参阅here。
答案 1 :(得分:14)
我发现ServiceMix提供了OSGi-fy Spring捆绑包。 4.1.4, http://repo2.maven.org/maven2/org/apache/servicemix/bundles/org.apache.servicemix.bundles.spring-aop/
我在我的osgi Bundle项目中尝试过,设置这样的依赖:
<dependency>
<groupId>org.apache.servicemix.bundles</groupId>
<artifactId>org.apache.servicemix.bundles.spring-core</artifactId>
<version>4.1.1.RELEASE_3</version>
</dependency>
在Felix中运行已发现的sprint包已激活:
START LEVEL 1
ID|State |Level|Name
...
5|Resolved | 1|Apache ServiceMix :: Bundles :: spring-expression (4.1.1.RELEASE_3)
6|Active | 1|Apache Felix Gogo Command (0.14.0)
7|Active | 1|Apache Felix Gogo Runtime (0.12.1)
8|Active | 1|Apache Felix Gogo Shell (0.10.0)
...
10|Active | 1|Apache ServiceMix :: Bundles :: spring-context (4.1.1.RELEASE_3)
11|Active | 1|Apache ServiceMix :: Bundles :: spring-core (4.1.1.RELEASE_3)
....
但是在最新版本5.4.0中,ServiceMix仅包含spring 3.2.11。
在我的OSGi环境中使用spring 4.1.1有任何风险吗?
答案 2 :(得分:13)
Spring Source去年停止使用OSGI heaaders创建jar: http://www.infoq.com/news/2012/10/spring-osgi-gradle/
我认为你不会得到包含OSGI捆绑包的官方maven回购。我们经常对OSGI包使用http://ebr.springsource.com/,但即便如此,也不包含3.2之后的任何版本
由于回购率低而无法添加为评论,因此添加为答案。
答案 3 :(得分:6)
我必须说,将Spring迁移到OSGi仍然存在于Apache ServiceMix中。 从maven repo
获取支持OSGi的清单的最新(4.0.2.RELEASE)Spring工件答案 4 :(得分:0)