[英]Eclipse IDE fail to launch with JVM Terminated. Exit code=-1
[英]How do I change my Eclipse IDE's launch JVM?
我在Mac上運行Eclipse Oxygen(1A),並且在“安裝詳細信息”中可以看到,IDE本身(用於實際啟動JVM)當前正在使用的JVM是Oracle的1.8.0_131
JVM。 我還安裝了其他一些JVM,包括最新版本1.8.0_161
並且我想切換到最新版本。
只是要清楚一點:我不是要設置在編譯和/或啟動特定項目的代碼時使用的執行環境。 我正在嘗試更改啟動Eclipse本身時使用的JVM。
到目前為止,我已經確保Eclipse知道我已更新的JRE,並且確實是默認的“ Installed JRE”,但是重新啟動Eclipse最終會使用相同的舊JVM(1.8.0_131)。
有沒有辦法告訴Eclipse我想使用更新的JVM,而不直接編輯Eclipse啟動腳本? (我假設我願意的話可以這樣做,但我不想這樣做。)
在參考文檔中,我們學習(基本)有關Eclipse啟動器可執行文件如何查找合適的Java安裝的詳細信息:
-vm
(可執行文件,主要)當傳遞給Eclipse可執行文件時,此選項用於查找要用於運行Eclipse的Java VM。 它應該是適當的完整文件系統路徑:Java
jre/bin
目錄,Java可執行文件,Java共享庫(jvm.dll或libjvm.so)或Java VM執行環境描述文件。如果未指定,則Eclipse可執行文件使用搜索算法來定位合適的VM。 無論如何,可執行文件然后使用-vm參數將路徑傳遞到Java Main使用的實際VM。 然后,Java Main將此值存儲在eclipse.vm中。
可悲的是,該“ 搜索算法 ”的結果未明確指定,從而使其“不確定”。 更復雜的是:這可能是取決於平台的策略。
編輯 :在Eclipse Launcher小節中,對該算法進行了更好的解釋,提供了更多詳細信息。
如果未指定
-vm
,啟動器將首先在eclipse根 目錄的jre目錄中然后在搜索路徑中查找虛擬機。
鑒於上述“ jvm搜索”過程和(相關的)含義,您可以(僅)通過在eclipse.ini
通過-vm
指定路徑來擁有穩定的環境。 這應該指向命令/usr/libexec/java_home -v 1.8
*返回的“穩定”路徑。
*注意:只需通過本地終端檢查此命令的結果。
在我的MacOS環境中,以上命令導致:
/Library/Java/JavaVirtualMachines/1.8.0.jdk/Contents/Home
在下一個清單中可以看到,我創建了一個符號鏈接,該鏈接指向系統中安裝的實際JDK和up2date JDK。
node:JavaVirtualMachines user$ ls -lah
total 0
drwxr-xr-x 6 root wheel 192B 18 Jan 13:35 .
drwxr-xr-x 5 root wheel 160B 6 Okt 14:28 ..
lrwxr-xr-x 1 root wheel 17B 18 Jan 13:34 1.8.0.jdk -> jdk1.8.0_161.jdk/
lrwxr-xr-x 1 root wheel 14B 3 Nov 10:42 1.9.0.jdk -> jdk-9.0.1.jdk/
drwxr-xr-x 3 root wheel 96B 3 Nov 10:40 jdk-9.0.1.jdk
drwxr-xr-x 3 root wheel 96B 18 Jan 13:32 jdk1.8.0_161.jdk
為了進一步調查您的問題,我在本地Eclipse Oxygen.2安裝中附帶了一個有趣的發現,該發現也可能適用於您的情況。 在下面的屏幕截圖中,我們看到JRE 名稱某種程度上是“靜態的”,並且沒有使用新版本進行更新。
單擊“已安裝的JRE”列表中的“編輯...”按鈕,以驗證您的本地情況。 它實際上可能指向更新的JRE / JDK版本。 在最佳情況下,您只需要調整該條目的名稱即可。
希望能幫助到你。
您需要進入eclipse文件夾,打開eclipse.ini並添加以下行:
-vm
C:/Program Files/Java/jdk1.7.0_7/bin/javaw.exe
更改您的Java路徑的路徑
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.