RCP 運行application,product時無法執行 Incompatible JVM提示 解決方法

無法啓動RCP application,product程序

完整的提示信息是:<title>Incompatible JVM</title>Version 1.6.0_45 of the JVM is not suitable for this product. Version: 1.7 or greater is required.

條件:項目依賴了jdk1.6  但啓動的時候 提示jvm啓動需要1.7

對於不同的版本提示的版本可能不同。

嘗試無用的方法:

1.右擊project 修改Properties->java Compiler 爲1.6

2.修改application的執行環境爲JavaSE-1.6

3.在Run/Debug Configration -> plug-ins 移除以來1.7的插件


直接原因:

Run/Debug Configration ->Arguments  -Dosgi.requiredJavaVersion=1.7  指定了JVM啓動時依賴jdk的參數

修改成1.6即可

深層分析:

這個參數配置你可能會很熟悉  這個和eclipse.exe同目錄下  eclipse.ini(eclipse啓動參數配置文件)中的參數也有它

如果我們修改了這個ini  改爲:-Dosgi.requiredJavaVersion=1.6
重啓之後 會不會新建的RCP程序的啓動就會用1.6 

我滿心歡喜的測試了一下,結果運行新的application 生成的新的Run/Debug Configration配置文件的參數依舊是-Dosgi.requiredJavaVersion=1.7

這時,好奇的你肯定會想這個參數是從哪裏獲得的呢?

經過我多番尋找

Eclipse的首選項中存在模板的設置:Windows->Preference->Plug-in Development->Target Platform中就是模板的參數設置來源

修改保存後 以後運行新的application就可以生效了。

1.從目錄可以知道 這個設置 只是針對插件開發程序 是插件編譯的參數

2.這個參數模板是每個工作空間獨有的 當然你可以和項目分享  

3.它最初的參數是來自eclipse.ini 然後就自己獨立了

還有更多的 自己探索吧

位於workspace的路徑是:workspace\.metadata\.plugins\org.eclipse.pde.core\.local_targets  一目瞭然

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章