2014-04-17 181 views
0

我有一個要求在JAR中插入插件(與UI)。從另一個插件UI(通過eclipse菜單),我需要在jar中顯示插件的UI。可能嗎?我的意思是以編程方式動態加載另一個插件。從JAR文件加載插件

回答

1

是的,這是可能的。

事情是這樣的:

BundleContext bundleContext = Platform.getBundle("your-plugin-id").getBundleContext(); 
FileInputStream is = new FileInputStream(file); 
String name = "[email protected]" + file.toURI().toURL().toString(); 
Bundle b = bundleContext.installBundle(name, is); 
b.start(); 

但我不認爲這是你想要做什麼。只需在Eclipse插件與JAR文件之間創建一個依賴關係即可。然後,當用戶點擊菜單並觸發操作時,就像通常那樣從jar文件啓動UI。

+0

非常感謝。爲了讓代碼正常工作,我需要在Eclipse插件與JAR文件之間創建一個依賴關係嗎?我提到的插件JAR文件是從用戶在列表框中選擇插件描述後從數據庫下載的。所以我們不能創建一個依賴的權利? – Kumar

+0

@ user3544081如果插件在構建/編譯時不可用,則無法創建依賴項。上面的代碼示例只需要一個文件來安裝它。 – Fredrik

+0

它的工作原理。謝謝。 – Kumar