2017-11-03 253 views
0

Windows 7,Eclipse Oxygen 1a。爲什麼Eclipse特定的JRE運行時,我特意告訴它運行特定的JDK?

在命令提示符下,我有以下幾點:

>set JAVA_HOME 
JAVA_HOME=c:\Program Files\Java\jdk1.8.0_152 

在我的eclipse.ini文件,我有這個作爲第一行:

-vm C:/Program Files/Java/jdk1.8.0_152/bin/javaw.exe 

在C:\ Program Files文件\ Java我有「jdk1.8.0_152」和「jre1.8.0_144」。

當我啓動Eclipse,我看到在我的工作區/ .metadata/.log文件的頂部如下:

eclipse.buildId=4.7.1.M20171009-0410 
java.version=1.8.0_144 
java.vendor=Oracle Corporation 
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US 
Framework arguments: -vm C:/Program Files/Java/jdk1.8.0_152/bin/javaw.exe -product org.eclipse.epp.package.java.product 
Command-line arguments: -os win32 -ws win32 -arch x86_64 -vm C:/Program Files/Java/jdk1.8.0_152/bin/javaw.exe -product org.eclipse.epp.package.java.product 

當我檢查與jvisualvm的過程中,我看到以下內容:

Java: version 1.8.0_144, vendor Oracle Corporation 
Java Home: C:\Program Files\Java\jre1.8.0_144 

什麼導致Eclipse仍然使用1.8.0_144 JRE?這造成了一個問題,因爲我有一個需要從JDK獲取tools.jar的Gradle構建。

回答

0

問題是,您將它放在.ini文件的第一行上。

其他特定Eclipse的選項 後一定會出現-vm選項(如-product,--launcher。*等),但-vmargs選項之前, 因爲-vmargs之後一切都過去了直接傳遞給JVM。

檢查這一點,並在此節指定JVM其他recomendations:https://wiki.eclipse.org/Eclipse.ini