在過去的一段時間裡,OSGI可謂喜事不斷,先是受到IBM和Eclipse基金會的鼎力支持,後又在剛剛結束的EclipseCon大會上,OSGi聯盟宣布長期醞釀的OSGi企業標准(第四次發布,Version 4.2)審批通過,預示著2010年將是Java模塊化的一年。
OSGi標准化致力於發生在JCP社區進程之外的內容,但是支持OSGi或者將在流行的Java EE服務器內部支持。該模塊化組件標准是為Java類打包以及來自於初期在嵌入是系統中工作的Java的相關資源所設計。
過去幾年中,廠商和開源提倡者已經在研究在更加完全的企業計算環境中應用OSGi。OSGi聯盟成員包括EriCSSon AB、Eclipse Foundation、IBM、Oracle、 Paremus、Progress Software、Red Hat、SAP AG、VMWare等。
“嵌入的起源對此有很大幫助。這很容易入手,因為其原本是一個小的設備架構,並變得很大,然後開始變得過大,就越來越小,”Eclipse基金會執行理事Mike Milinkovich表示。然而管理人員是OSGi聯盟,OSGi是Eclipse的要素,因此正式的標准在 EclipseCon上揭幕。
“Eclipse在OSGi的成功中占很大一部分。我們是首先接受該理念的人員之一。它成為我們使用Eclipse框架模型的框架,”Milinkovich說。尤其是最近,Eclipse基金會已經開始致力於企業參考執行稱為雙子星企業OSGi實現。OSGi對於Aries也極為重要,ArIEs是apache基金會孵化器項目,意在為企業OSGi應用編程模型創造組件。
為Java EE將OSGi的模塊化
“這是OSGi聯盟首次對於企業發布一項標准,”IBM中間件部門OSGi專家組技術主管Graham Charters說道,“在全球各地,很多人一直在努力建立規范。這僅僅過了三年。”,他表示:“它為Java EE程序模塊帶來可OSGi的模塊化,使民眾可以利用他們傳統上已經寫在Java EE內的,並開始采用OSGi來分解其應用,使之成可重復使用的模塊,並通過整合服務層,避開一些他們已經建立的巨大的,幾乎單一的應用程序,而且在共享應用程序上很麻煩。”
Charters介紹這些“麻煩”之一就是這樣的Java EE要求開發人員對應用軟件包的依賴關系升級。OSGi為軟件架構師和開發人員提供分享的內存和磁盤使用情況的機會。
聲明式服務及Blueprint容器
OSGi的發布中包括Web應用標准和數據庫集成、管理和配置服務。可用的同樣是新的聲明式服務和藍圖容器標准。Blueprint容器通過VMware/SpringSource 的專業Spring框架到達OSGi。“熟悉Spring的開發人員將很容易使用‘Blueprint’。對於想要更深 一層次了解的開發人員也有其他的OSGi模型。”Paremus首席執行官Richard Nicholson表示,聲明式服務代表了更加“徹底”的觀點。
更大的模塊化預期的好處就是更大的代碼重用。Nicholson 說:“我的觀點是OSGi將開始從高級技術層人員走向組織,這些人期望代碼重用成為他們想要發揮的戰略上的事情。這將是進入企業的強制性因素。”
為了讓遷移到OSGi表的容易,Paremus推出了靈活的軟件套件。 Nimble在現有的Java EE軟件上揭開類的依賴關系。發展階段後,Nimble部署到類網格服務運行時的計算節點。
流線化的企業OSGi期望更多的工具。這個平台最終取得可以預測的成功之前將需要更多經驗。“企業OSGi發布很重要,” Stephen O'Grady分析師RedMonk表示,“這幾年來一直在增長。”
O'Grady說:“模塊化的Java是一件好事,但OSGi尚未商業化,但也有人已經把它放到中心。”