簡體   English   中英

JAVA_HOME 指向無效的 Java 安裝

[英]JAVA_HOME points to an invalid Java installation

我在 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

我可以啟動任何 jar:

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?

如果我沒看錯,有一個“;” 在 JAVA_HOME 路徑的末尾。 運行 Jars 和 javac 使用 PATH 環境變量,不受此影響。

您可以刪除尾隨的“;” 當您在允許您添加或刪除 JAVA_HOME 值的窗口中時,單擊“編輯文本”。 編輯文本按鈕位置

嗨,我認為 JAVA_HOME 的 PROPERTIES 未設置,這可能會導致出現此錯誤。 您可以在環境變量中設置它,然后重新啟動系統。 或者你打開 cmd run > set 並輸入這將工作。

您可能未定義 java 路徑,但在 $PATH 中定義了 jvm 的絕對路徑,因此只需進入您的資源管理器 > 這台電腦 > 高級設置 > 環境變量 > 並添加一個帶有路徑的 JAVA_HOME 變量jvm 可執行文件是

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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