猿问

JAVA_HOME 指向无效的 Java 安装

我在我的 windows 10 中设置了 JAVA_HOME。当我检查 java 版本时,我得到下一个:


C:\>java -version

java version "1.8.0_221"

Java(TM) SE Runtime Environment (build 1.8.0_221-b11)

Java HotSpot(TM) 64-Bit Server VM (build 25.221-b11, mixed mode)

虽然,我可以检查 javac 版本:


C:\>javac -version

javac 1.8.0_221

我可以启动任何罐子:


D:\>java -jar authTest.jar

Hello world!!!

但是当我尝试启动弹性搜索时,出现异常:


D:\elasticsearch-2.3.0>bin\service.bat install

JAVA_HOME points to an invalid Java installation (no java.exe found in "C:\Program Files\Java\jdk1.8.0_221;"). Exiting...

但是如果在控制台中手动设置 JAVA_HOME


D:\elasticsearch-2.3.0>set JAVA_HOME=C:\Program Files\Java\jdk1.8.0_221

服务启动成功:


D:\elasticsearch-2.3.0>bin\service.bat install

Installing service      :  "elasticsearch-service-x64"

Using JAVA_HOME (64-bit):  "C:\Program Files\Java\jdk1.8.0_221"

The service 'elasticsearch-service-x64' has been installed.

但是如果我重新打开 cmd - 我需要重复所有步骤。为什么每次cmd都需要设置JAVA_HOME?


有只小跳蛙
浏览 158回答 3
3回答

翻翻过去那场雪

如果我没看错的话,有一个“;” 在 JAVA_HOME 路径的末尾。运行 Jars 和 javac 使用 PATH 环境变量,不受此影响。您可以删除尾随的“;” 通过在允许您添加或删除 JAVA_HOME 值的窗口中单击“编辑文本”。

元芳怎么了

您好,我认为 JAVA_HOME 的 PROPERTIES 未设置,这可能会导致出现此错误。您可以在环境变量中设置它,然后重新启动系统。或者你打开 cmd 运行 > 设置并输入这将起作用。

海绵宝宝撒

您的 java 路径可能未定义,但 jvm 的绝对路径在 $PATH 中定义,因此只需进入您的资源管理器 > 此电脑 > 高级设置 > 环境变量 > 并添加一个 JAVA_HOME 变量,其中包含指向文件夹的路径jvm 可执行文件是
随时随地看视频慕课网APP

相关分类

Java
我要回答