为 Eclipse 设置正确的 PATH

Posted

技术标签:

【中文标题】为 Eclipse 设置正确的 PATH【英文标题】:Setting the correct PATH for Eclipse 【发布时间】:2016-06-23 05:09:39 【问题描述】:

我最近改变了我的路径,以便可以继续阅读 Head First Java 书籍,并且我之前有过 Eclipse。现在,当我再次尝试进入 Eclipse 时,它​​不会打开,因为它说在我的目录中找不到要使用的 JRE 或 JDK。我已经移动了 JDK 文件。我已经下载了 jdk1.8.0_60。那么如何让 Eclipse 再次打开呢?

【问题讨论】:

尝试编辑eclipse.ini 文件(对我来说在~/eclipse/java-mars/eclipse;对于windows 可能在C:\Program Files 的某个地方。)并将'-vm' 后面的行更改为您的实际jdk 路径。 另外,更改您的 PATH 以包含 jdk 目录。 还要检查您是否安装了 x32 或 x64 版本的 Java,并为您之前下载的 eclipse 验证相同的版本。 我尝试将我的路径更改为 ThisPC\Desktop\eclipse\jdk1.8.0_60\bin,但它不起作用。我什至尝试将 jdk1.8.0_60 文件放在 eclipse 文件本身中,但这也不起作用...... 移动你的 JDK 文件或目录只会让事情变得更糟;它是一个已安装的程序,应放在最初安装的位置。 Eclipse 不仅仅关注PATH。此外,您不应该更改您的PATH,您应该添加到它。您也不应该将PATH 更改为 bin 文件夹,只需更改默认安装目录本身即可。 【参考方案1】:

有操作系统、JDK 和 Eclipse 位数的工作组合。就我而言,我在 64 位操作系统上使用 64 位 JDK 和 32 位 Eclipse。将 JDK 降级为 32 位后,Eclipse 开始工作。

请使用以下组合之一。

32 位操作系统、32 位 JDK、32 位 Eclipse(仅限 32 位)

64 位操作系统、32 位 JDK、32 位 Eclipse

64 位操作系统、64 位 JDK、64 位 Eclipse(仅限 64 位)

【讨论】:

【参考方案2】:

我通过在环境变量中添加或更改变量解决了这个问题。 进入Win7->我的电脑->属性->高级系统设置->环境变量

    如果没有变量 JAVA_HOME,请将其添加到变量的值中,并带有指向安装 JDK 的文件夹的路径,例如 C:\Program Files\Java\jdk-11.0.2 如果没有变量 PATH 或者它有其他值,请将变量的值更改为 C:\Program Files\Java\jdk-11.0.2\bin 或使用该值添加变量 PATH

祝你好运

【讨论】:

【参考方案3】:

我使用的是 Windows 8.1 环境。我最近在安装 Eclipse 后运行我的第一个 java 程序时遇到了同样的问题。 我在 d:\java 的 d 驱动器上安装了 java。 但是 Eclipse 正在查看默认安装 c:\programfiles\java。 我做了以下事情:

    修改了我的eclipse.ini文件,打开后添加如下:

    -vm
    d:\java\jdk1.8.0_161\bin 
    

    在创建 java 程序时,我必须取消选择默认构建路径,然后选择 d:\java。

在此之后,程序运行良好,并让 hello world 开始工作。

【讨论】:

【参考方案4】:

对我来说没有一个工作。我将现有的eclipse.ini 与新的eclipse.ini 进行了比较,然后开始删除选项并测试 eclipse 是否有效。

阻止 Eclipse 启动的唯一选项是 -XX:+UseParallelGC,所以我删除了它,瞧!

【讨论】:

【参考方案5】:

Like Abob said:

Eclipse 不咨询JAVA_HOME 变量

您应该在文件eclipse.ini 中指定Eclipse 应该在哪里找到您的JDK。具体来说,如下参数(注意在ini文件中是2行):

-vm
C:\Java\JDK\1.8\bin\javaw.exe

或者你的 javaw.exe 碰巧在哪里。

注意: ini文件的格式很讲究;请务必咨询https://wiki.eclipse.org/Eclipse.ini,以确保您完全正确。

【讨论】:

值得注意的是,这可用于使用 Java Portable 从 USB 驱动器上运行 Eclipse。只需使用相对路径,例如\PortableApps\Programs\CommonFiles\Java\bin 该注释非常有帮助 - 仅当我将它移到 -vmargs 上方时,该行才对我有用 还要确保映射了正确的 java 版本。就像 win32 有 jdk_32 和 64 一样,一个有那个。很有帮助。 我在 eclipse.ini 文件中找不到 -vm。只是-vmargs。我该怎么办? @madladzen :你可以添加它。 -vmargs 提供参数,-vm 指向 eclipse 应该使用的 jvm。看看链接的 wiki,它很好地解释了一切【参考方案6】:

Eclipse 文件夹有一个初始化文件,eclipse 在启动/双击时使用它,命名为 eclipse.ini。在 eclipse.ini 文件中添加以下行。 vm 定义了我们希望 eclipse 使用的 JVM 的路径。

-vm
C:\Program Files\Java\jdk1.8\bin\javaw.exe

确保您已单独添加以上行并添加到以下行之上

--launcher.appendVmargs
-vmargs

【讨论】:

对于 Spring Tool Suite [3.8.3.RELEASE-e4.6.2] " -vm C:\Program Files\Java\jdk1.8.0_74\bin\javaw.exe " 分别添加以上行在以下行之前“--launcher.defaultAction openFile -vmargs -Dosgi.requiredJavaVersion=1.8”【参考方案7】:

转到System Properties > Advanced > Enviroment Variables 并在System variables 下查看

首先,创建/设置您的 JAVA_HOME 变量

即使 Eclipse 不参考 JAVA_HOME 变量,设置它仍然是一个好主意。请参阅How do I run Eclipse? 了解更多信息。

如果您尚未创建和/或在System variables 列表下看不到JAVA_HOME,请执行以下操作:

    点击最底部的New... 对于Variable name,输入JAVA_HOME 完全正确 对于Variable value,这可能会有所不同,具体取决于您的计算机和Java 的位。 如果您的 计算机和 java 都是 64 位,请输入 C:\Program Files\Java\jdk1.8.0_60 如果您的 计算机和 java 都是 32 位,请输入 C:\Program Files\Java\jdk1.8.0_60 如果您的 计算机是 64 位,但您的 java 是 32 位,请输入 @987654337 @

如果您已创建和/或确实看到JAVA_HOME,请执行以下操作:

    点击System variables 下您看到JAVA_HOME 的行 点击最底部的Edit... 对于Variable value,根据java 和您的计算机位将其更改为上面#3 中所述的内容。重复: 如果您的 计算机和 java 都是 64 位,请将其更改为 C:\Program Files\Java\jdk1.8.0_60 如果您的 计算机和 java 都是 32 位,请将其更改为 C:\Program Files\Java\jdk1.8.0_60 如果您的 计算机是 64 位,但您的 java 是 32 位,请将其更改为C:\Program Files (x86)\Java\jdk1.8.0_60

接下来,添加到您的 PATH 变量中

    点击System variables下面的行,里面有PATH 点击最底部的Edit... 如果您有 较新版本的 Windows: 点击New 输入C:\Program Files (x86)\Java\jdk1.8.0_60 OR C:\Program Files\Java\jdk1.8.0_60 取决于您的计算机和java 的位(见上文^)。 按Enter 并再次单击New。 输入C:\Program Files (x86)\Java\jdk1.8.0_60\jre OR C:\Program Files\Java\jdk1.8.0_60\jre 取决于您的计算机和java 的位(再次参见上文^)。 在所有相关窗口上按Enter 并按OK 如果您有 旧版本的 Windows 在Variable value 文本框(或类似内容)中,将光标一直拖到最后 如果还没有分号,请添加分号 (;) C:\Program Files (x86)\Java\jdk1.8.0_60 C:\Program Files\Java\jdk1.8.0_60 添加另一个分号 (;) C:\Program Files (x86)\Java\jdk1.8.0_60\jre C:\Program Files\Java\jdk1.8.0_60\jre

更改eclipse.ini

    找到您的eclipse.ini 文件并将其复制粘贴到同一目录中(应命名为eclipse(1).ini) 将eclipse.ini 重命名为eclipse.ini.old,以防万一出现问题 将eclipse(1).ini 重命名为eclipse.ini

    打开您新重命名的eclipse.ini 并将其全部替换为:

    -startup
    plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar
    --launcher.library
    plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.100.v20110502
    -product
    org.eclipse.epp.package.java.product
    --launcher.defaultAction
    openFile
    --launcher.XXMaxPermSize
    256M
    -showsplash
    org.eclipse.platform
    --launcher.XXMaxPermSize
    256m
    --launcher.defaultAction
    openFile
    -vm
    C:\Program Files\Java\jdk1.8.0_60\bin\javaw.exe
    -vmargs
    -Dosgi.requiredJavaVersion=1.5
    -Xms40m
    -Xmx1024m
    

XXMaxPermSize 可能已被弃用,因此它可能不起作用。 如果 eclipse 仍然没有启动,请执行以下操作:

    删除较新的eclipse.inieclipse.ini.old 重命名为eclipse.ini 打开命令提示符 输入eclipse -vm C:\Program Files (x86)\Java\jdk1.8.0_60\bin\javaw.exe

如果问题仍然存在

尝试将您的 eclipse 和 java 更新到最新版本。 8u60 (1.8.0_60) 不是最新版本的 java。有时,最新版本的 java 不适用于旧版本的 eclipse,反之亦然。否则,如果您仍有问题,请发表评论。您也可以尝试重新安装 Java。

【讨论】:

还是不行。我重新下载了eclipse并将其全部放在我桌面上的eclipse2文件夹中。我不知道为什么当我尝试打开 Eclipse 时仍然出现错误。错误是说在此位置查找时没有找到虚拟机:C:Users\Ty\Desktop\eclipse2\jre\bin\javaw.exe 如果在eclipse目录下找不到JVM,尝试根据位移动到C:\Program Files (x86)\Java\jdk1.8.0_60\binC:\Program Files\Java\jdk1.8.0_60\bin(默认目录;见Finding the JVM),然后按照新的我在我的答案中发布的部分。如果这不起作用,请删除所有 java 安装并从 here 安装最新版本 所有这些关于 JAVA_HOME 和 PATH 的东西对于运行 Eclipse 毫无意义。并且关于替换 eclipse.ini 的 entire 内容的建议是非常糟糕的建议 - 不同的 Eclipse 包和不同的版本在 eclipse.ini 中会有不同的内容,所以盲目地替换它们可能会破坏事情。所需要做的就是确保有一个-vm 参数和有效值,如wiki.eclipse.org/Eclipse.ini 中所述

以上是关于为 Eclipse 设置正确的 PATH的主要内容,如果未能解决你的问题,请参考以下文章

为 C++/Boost 库设置环境(netbeans 或 eclipse)

如何为 Eclipse Mars 正确设置 JavaFX?

如何在 Eclipse 中正确设置由 appfuse 创建的多模块 SpringMVC 应用程序?

R无法在Eclipse中正确安装... Java问题?

IDEA里的如何正确设置自定义的Keymap(Eclipse为例)(图文详解)

Eclipse CDT 无法正确解析 <variant> 包含文件