Where can I find Spring 4 OSGi bundles

余生长醉 提交于 2019-12-18 12:51:04

问题


Where can I find OSGi bundles for Spring 4? I checked http://ebr.springsource.com/ but can only find Spring 3.2.x and the artifacts in Maven Central are not bundles.

Clarification

I'm not looking for Spring DM or similar. I'm looking for the "Spring Framework" JARs (spring-core, spring-beans, spring-context, …) as OSGi bundles. I'm not trying to create an application context in an OSGi environment. I just need the (exception) classes in an OSGi environment.


回答1:


Spring will NOT support any further releases as OSGi bundles. The official support has been stopped with spring 3.2.4 (although you could find 3.2.5 artifacts here, contradicting the statement made in the Eclipse Forum)

Glyn Normington from Spring source acknowledged that in several places, see here:

  • on Twitter
  • Eclipse Forum

However, there is hope. On the Karaf - dev list, one can read that they intend to support spring libraries in the ServiceMix project. Details in the entire thread see here.




回答2:


I found ServiceMix had provided OSGi-fy Spring bundles up to ver. 4.1.4, http://repo2.maven.org/maven2/org/apache/servicemix/bundles/org.apache.servicemix.bundles.spring-aop/

I tried it in my osgi Bundle project, to set dependeny like that :

 <dependency>
        <groupId>org.apache.servicemix.bundles</groupId>
        <artifactId>org.apache.servicemix.bundles.spring-core</artifactId>
        <version>4.1.1.RELEASE_3</version>
 </dependency>

Run in Felix a found sprint bundles are activated :

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)
.... 

But in it's latest release 5.4.0, ServiceMix only include spring 3.2.11.

Is there any risk when use spring 4.1.1 in my OSGi environment?




回答3:


Spring source stopped creating jars with OSGI heaaders last year: http://www.infoq.com/news/2012/10/spring-osgi-gradle/

I do not think you will get an official maven repo containing OSGI bundles for spring. We use http://ebr.springsource.com/ frequently for OSGI bundles, but even that does not contain any version after 3.2

Could not add as comment due to low repo, hence adding as answer.




回答4:


I must say that migrating Spring to OSGi is still live in Apache ServiceMix. Get the latest(4.0.2.RELEASE) Spring artifacts with OSGi-enabled manifest from maven repo




回答5:


its a little bit tricky to find, here is the link for the OSGi bundle

http://docs.spring.io/downloads/nightly/release-download.php?project=OSGI

and for all spring projects

http://docs.spring.io/downloads/nightly/release-download.php



来源:https://stackoverflow.com/questions/21181154/where-can-i-find-spring-4-osgi-bundles

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!