我已經創建了一個eclipse插件,並且我想在eclipse運行時進行部署。我有下面的包結構。如何從eclipse插件中的jar文件中引用文件
com.myplugin
|
---resources
|
---server.bat
作爲插件作業的一部分,應該執行「server.bat」文件。
我將插件打包爲.jar文件,包括二進制文件中的resouces文件夾並放入eclipse「plugins」文件夾中。
插件生效,它工作正常,但我執行「server.bat」文件時出現了問題,該文件位於我生成的jar文件中。該錯誤消息說:
「Windows無法找到‘資源\ server.bat’,確保輸入名稱正確 並再試一次。」
我相對路徑和絕對路徑的嘗試,但它沒有工作。
這裏是代碼做的工作:
URL url = Activator.getDefault().getBundle().getEntry("/resources/server.bat");
String fileURL = FileLocator.toFileURL(url).toString();
String commandLine = "cmd.exe /c start " +fileURL;
Process process= Runtime.getRuntime().exec(commandLine);
我拿到 「fileURL」 輸出:
文件:/ d:/程序 文件/ IBM/SDP /配置/組織.eclipse.osgi/bundles/2392/1/.cp/resources/server.bat
我不確定這是否正確。
希望這足以說明問題。
或者,請推薦一些其他方式,例如創建功能來部署帶有文件夾結構的插件。我還沒有嘗試過這個選項。
我也是一個jar文件有和你一樣的問題。我必須訪問要執行的.bat文件,它位於生成的插件.jar中。我沒有找到任何解決方案,但我解壓插件.jar到一個文件夾,並將其放在「/插件」目錄,它的工作。你也可以嘗試相同的...或者如果你知道的方式,請發帖.. – Sebastian 2011-04-14 15:56:50
你是我的救星。你的解決方案有效 我也將它與這條關於構建路徑的建議相結合:http://www.mhaller.de/archives/3-Accessing-resource-files-within-your-Eclipse-plugins.html – cdmihai 2014-02-20 00:02:58