爲開發Netbeans 7.0.1 RCP模塊有幾個選項。我還沒有找到任何明確的比較。 所以我想知道其中哪些是最容易:Netbeans RCP模塊選項。 Felix,equinox或標準Netbenas模塊?
發展
由用戶安裝(例如,用戶可以選擇從一個存儲庫模塊
適當的罐子)
這使得編寫更少的不可重用代碼(例如,當您想要稍後使用類的Web應用程序時)?
哪一種最受歡迎?
爲開發Netbeans 7.0.1 RCP模塊有幾個選項。我還沒有找到任何明確的比較。 所以我想知道其中哪些是最容易:Netbeans RCP模塊選項。 Felix,equinox或標準Netbenas模塊?
發展
由用戶安裝(例如,用戶可以選擇從一個存儲庫模塊
適當的罐子)
這使得編寫更少的不可重用代碼(例如,當您想要稍後使用類的Web應用程序時)?
哪一種最受歡迎?
最簡單的方法是使用傳統的Netbeans的方式 - 建立NBM的。這是很好的測試和良好的功能。構建模塊後,您將獲得裏面所有需要的信息(額外的罐子,設置等)
您可以使用從NetBeans中「模塊更新」功能的「NBM」文件。
另一種方法是建立模塊爲OSGi包。 此功能是在6.7版本中引入的,到目前爲止它有一些問題。
首先,正常理解的包是一個jar。如果你的bundle依賴於其他的jar(f.e.apache-commons:beanutils),你需要將這個jar打包到你的bundle jar中(使用maven-bundle-plugin)或者將「beanutils」安裝爲獨立的bundle。第一種解決方案並不是最好的,因爲如果將來另一個捆綁包想要使用「beanutils」,則需要將新捆綁與舊捆綁鏈接在一起,即使它們不需要這樣做。這會導致模塊之間的高度一致性。或者你可以將「beanutils」包裝到你的新包中,但這會導致osgi-framework中的類加載問題。
所以,如果你需要安裝NetBeans模塊,您只需安裝一個NBM文件,僅此而已。
如果您需要安裝包,你需要單獨安裝所有依賴包旁邊你捆綁。
另一件事情是,現在你不能配置osgi-framework,它嵌入netbeans和加載bundle的過程與加載標準netbeans模塊有些不同,這會導致一些「奇怪的」問題。
我敢肯定,從NetBeans中的人就會解決這個問題,但他們在正確的方向前進,但現在,如果你不需要捆綁,不使用它。