簡體   English   中英

如何更改Eclipse IDE的啟動JVM?

[英]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”列表中的“編輯...”按鈕,以驗證您的本地情況。 它實際上可能指向更新的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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM