根據此post,IDEA使用Osmorc來運行OSGi框架。它反過來使用Pax Runner來啓動不同的框架實現。在IntelliJ IDEA中運行Apache Felix 4.0.2 11
IDEA 11中的工具鏈只能運行最高3.0.2的Apache Felix,但我必須運行4.0.2版本。可能嗎? IDEA還有其他OSGi框架啓動器嗎?
根據此post,IDEA使用Osmorc來運行OSGi框架。它反過來使用Pax Runner來啓動不同的框架實現。在IntelliJ IDEA中運行Apache Felix 4.0.2 11
IDEA 11中的工具鏈只能運行最高3.0.2的Apache Felix,但我必須運行4.0.2版本。可能嗎? IDEA還有其他OSGi框架啓動器嗎?
您可以配置Osmorc從插件+項目設置中使用的OSGI框架。 我使用IntelliJ IDEA 11.1.2和Osmorc 1.4.2。
下面是一個截圖,我將OSGI容器(在IDE Settings - > OSGi)配置爲安裝Apache Felix 4.0.1的本地 。
您也可以定義自定義的框架/容器,然後選擇所需的 OSGi框架在項目設置使用 - >如下所示OSGI:
爲了要創建運行配置,首先需要創建一些OSGi構面。 希望你也使用maven和maven-bundle-plugin,這將極大地減少你需要做的配置的數量(因爲OSmorc會自動與你的pom.xml同步),但即使你不這樣做,你也可以手動編輯用於創建捆綁的信息。
所以,你需要做的下一步是創建一些OSGi方面。轉到項目「Structure - > Facets」 ,併爲您希望創建的每個包添加一個新的OSGi構面。它啓用了自動檢測功能,那麼可能已經有了這些方面。如果沒有,那麼手動添加它們,然後按照您認爲合適的方式配置它們,如下例所示。
最後編輯你的「運行配置」,並添加新的OSGi運行配置。 選擇要使用你想開始以及其他 參數,如下面的示例框架和包:
我從來沒有滿足於IDEA 10 osmorc,所以我結束了只需將org.apache.karaf.main.Bootstrap.main()作爲常規Java應用程序啓動即可。這種方法工作得很好,除了你不能依賴IDE的編譯按鈕。 –