2017-11-03 261 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