
- 我已經刪除了電腦上所有舊的 Java 8 安裝。
- 我已經下載了最新的 openjdk 11https://jdk.java.net/11/並將內容提取到
C:\Program Files\Java\
. 我已將系統環境變數設定為
JAVA_HOME = C:\Program Files\Java\jdk-11.0.1
並添加
%JAVA_HOME%\bin
到路徑中。在命令提示字元下
> java -version
傳回:Error: opening registry key 'Software\JavaSoft\Java Runtime Environment' Error: could not find java.dll Error: Could not find Java SE Runtime Environment.
為什麼?
答案1
如何讓它發揮作用:
Windows > 開始 > cmd >
C:> for %i in (javac.exe) do @echo. %~$PATH:i
或者
C:> where java
它會傳回C:\ProgramData\Oracle\Java\javapath
包含以下內容的資料夾:
- 執行程式
- javaw.exe
- javaws.exe
使用 Windows 檔案總管瀏覽到此資料夾並刪除所有內容(上面的三個檔案)。
關閉並重新開啟 cmd(Windows > 開始 > cmd >)
C:> java -version
現在應該返回:
openjdk版本“11.0.1”2018-10-16
OpenJDK 運行環境 18.9(內部版本 11.0.1+13)
OpenJDK 64 位元伺服器 VM 18.9(內部版本 11.0.1+13,混合模式)
或類似的東西,取決於您下載的 java 發行包...
有用!
答案2
我遇到了同樣的問題,
如何檢查:
- 開啟cmd,執行“where java”(不含引號)
- 您應該會看到 java 路徑的多個輸出,其中之一應該是您設定的“C:\Program Files\Java\jdk-11.0.1\bin”,其他應該在上面
怎麼解決:
選項1:
只需刪除所有其他 java 路徑
選項2:
檢查環境變數設置,將 %JAVA_HOME%\bin 移至所有其他 java 路徑之上
答案3
嘗試在路徑的開頭而不是末尾添加新的 Java 主路徑,即 %JAVA_HOME%\bin;(路徑的其餘部分)。它將首先被選中。為我工作。