在Windows上,为什么java -version返回错误:打开注册表项'Software \ JavaSoft \ Java Runtime Environment'?


1
  1. 我删除了所有古老的Java 8安装在我的电脑上。
  2. 我从中下载了最新的openjdk 11 https://jdk.java.net/11/ 并将内容解压缩到C:\ Program Files \ Java \
  3. 我已经设置了系统环境变量

JAVA_HOME = C:\ Program Files \ Java \ jdk-11.0.1

并补充说

%JAVA_HOME%\ bin到Path。

  1. 在命令提示符中> java -version返回:

错误:打开注册表项'Software \ JavaSoft \ Java Runtime Environment'

错误:找不到java.dll

错误:找不到Java SE运行时环境。

  1. 为什么?

Answers:


2

如何使它工作:

Windows>开始> cmd>

C:> for %i in (javac.exe) do @echo.   %~$PATH:i

要么

C:> where java

它返回'C:\ ProgramData \ Oracle \ Java \ javapath'文件夹,其中包含:

java.exe的

javaw.exe的

javaws.exe

使用Windows文件资源管理器浏览到此文件夹并删除所有内容(上面的三个文件)。

关闭并重新打开cmd(Windows>开始> cmd>)

C:> java -version

现在应该返回:

openjdk version“11.0.1”2018-10-16

OpenJDK运行时环境18.9(版本11.0.1 + 13)

OpenJDK 64位服务器VM 18.9(版本11.0.1 + 13,混合模式)

或类似的东西取决于您下载的Java发布包...

有用!


-3

尝试在路径的开头添加新的Java主路径而不是结束,即%JAVA_HOME%\ bin;(路径的其余部分)。它将首先被选中。为我工作。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.