2012-10-17 52 views

回答

1

那麼有一個可用於Karaf 2.3.0的Spring31功能。 它可能會看到次優的提供它作爲一個可選的功能,但現在的標準。 2.3.0行的彈簧特性是spring 3.0.x的特性。 對於開箱即用的支持,您需要等待一會Karaf 3.0

1

使用OSGi始終有一個擔心:(

駱駝支持春季3.0和3.1。所以從這點駱駝,你應該沒問題。Karaf來開箱與Spring 3.0.7,和你需要重新配置Karaf來使用Spring 3.1.x代替

恕我直言,這是錯誤的(例如Karaf公開了Spring 3.0.7開箱即用),因爲我相信Karaf不應強制用戶進入特定的Spring版本。但是讓最終用戶可以自由選擇他們想要使用的Spring,甚至可以將Spring 3.0,3.1和3.2並行運行,就像容器中部署的應用程序所需要的那樣;或者至少Karaf應該使得它更容易選擇哪個春季版本開啓/開箱即用。

有關於這個問題的Karaf @dev郵件列表的討論,以及如何解決這個問題。 http://karaf.922171.n3.nabble.com/Apache-Karaf-2-3-0-very-close-tp4026295.html 這裏 http://karaf.922171.n3.nabble.com/Re-3rd-Party-Feature-Definitions-tp4026366.html

對這些郵件列表擡起你的聲音作爲Karaf團隊上市那裏!

2

我在這個問題上掙扎了一下。基本上我們使用的是Camel 2.10.1,Spring Integration 2.1.3.RELEASE(是的,我知道兩個集成框架),我們使用Spring 3.1.2.RELEASE,activemq 5.7.0和Karaf 2.3.0。正如克勞斯OSGi的說,它始終是一個隱憂,尤其是當你不擁有控制權

  1. 第三方OSGi的表現
  2. Karaf特徵描述(這是略少一份擔心,你可以解決這個問題創建自定義分配)。

我們也使用Spring DM,所以基本上有三種可用的Spring 3.0,3.1和2.5.6版本。你最終可以安裝三個版本的spring-core,例如通過傳遞依賴解決方案或其他方式安裝,並且根據啓動順序等,你可以運行一些令人討厭的「使用」約束,這總是很痛苦,有時候不容易解決。

我們最終什麼事做與Karaf對準和支持3.0.7拋棄春3.1.2.RELEASE,這很容易在我們的情況下,3.0.7的罰款。

總的來說,我有發現根據容器提供的開箱即用是一種合理的策略來處理依賴關係。

+0

請考慮格式化您的答案 - 有一大堆非結構化的行很難閱讀;-) – kleopatra