检查Java版本时出错:找不到java.dll

为什么我会这样? 我该如何解决?

C:\Users\ash>java version Error: Registry key 'Software\JavaSoft\Java Runtime Environment'\CurrentVersion' has value '1.7.0_01', but '1.7' is required. Error: could not find java.dll Error: Could not find Java SE Runtime Environment. 

重新安装JDK并在JDK上设置系统变量JAVA_HOME。 (例如C:\ tools \ jdk7)
并将JAVA_HOME变量添加到PATH系统变量中

输入命令行

 echo %JAVA_HOME% 

 java -version 

validation您的安装是否成功完成。

重新安装所有JDK的公认解决方案有点苛刻。 我也经历过这个问题,这是我的2美分:

自从我安装了JDK 8并且仍然安装了JDK 6以来,这个问题就开始发生了。 我需要我正在进行的不同项目。

我注意到我有一个User和一个系统%JAVA_HOME% ,所以我删除了我的User %JAVA_HOME%变量并只留下了系统一个。

我还注意到在我的Oracle安装中有一些Java可执行文件,我相信那些因为我的Oracle和Java安装都在我的%PATH%变量中存在冲突的那些。

我从%PATH%变量中删除了所有Java路径,并且只在变量的开头留下%JAVA_HOME%\bin ,以避免与Oracle安装发生任何冲突。

安装java 1.8后我遇到了类似的问题。

要解决此问题,请转到高级系统设置 – >路径并删除

C:\ ProgramData \ ORACLE \的Java \ javapath;

删除

C:\ ProgramData \ ORACLE \的Java \ javapath;

工作就像魅力

您可能在64位环境中使用32位版本的Java。 从HKLM \ Software \ JavaSoft导出注册表配置单元并导入HKLM \ Software \ Wow6432Node \ JavaSoft。 对于1.6,我只需要JavaHome和RuntimeLib值。

 Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Javasoft] [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Javasoft\Java Runtime Environment] "CurrentVersion"="1.6" [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Javasoft\Java Runtime Environment\1.6] "JavaHome"="C:\\Java\\jre" "RuntimeLib"="C:\\Java\\jre\\bin\\client\\jvm.dll" 

我编辑了我的路径,将Oracle JDK放在路径的起点并修复它。

问题:我们的Windows 2012服务器遇到了同样的问题。 我们使用了JAVA_HOME环境系统变量,我们在PATH中使用了这种设置:…%JAVA_HOME%/ bin; …并且PATH中没有其他与java相关的设置。

问题是我们在JAVA_HOME变量值的末尾有一个空格。 像’C:\ Program Files \ Java \ Jdk 1.8.0_172’所以%JAVA_HOME%/ bin意味着’C:\ Program Files \ Java \ Jdk 1.8.0_172 \ bin’。 所以因为该值是按空格分割的,系统试图在’C:\ Program Files \ Java \ Jdk 1.8.0_172’中找到java.exe,显然不是这样。

解决方案是:从JAVA_HOME的值末尾删除空格!

我从PATH变量中删除了“C:\ Program Files(x86)\ Heroku \ bin”,问题已经消失。 我认为可能是Heroku需要不同版本的Java。 因此,检查PATH变量中的所有目录,删除可能存在冲突的可能目录。

确保您的JDK Path变量指向\bin文件夹并位于列表的顶部。

如果有任何其他条目有一个名为java的文件,它将针对该文件而不是JDK中的java文件运行命令。 除非您的文件由于某种原因损坏或损坏,否则无需重新安装整个JDK。

如果在完成环境变量中的所有设置后,在cmd中遇到此错误,并且出现“无法找到运行时环境”的其他错误。 然后你只需要在你的jdk文件夹中运行jre.exe并重新安装它,然后通过java -version命令重新检查它。 希望它会对你有所帮助。

安装java 10.0后我遇到了类似的问题

要解决此问题,请转到高级系统设置 – >路径并删除

C:\ ProgramData \ ORACLE \的Java \ javapath;