确保您安装了正确的jre架构(x86或x64),它为我解决了这个问题。
跟随https://octave.1599824.n4.nabble.com/Octave-4-installer-doesn-t-detect-JRE-at-install-time-td4670684.html和:https://superuser.com/questions/1382158/on-windows-why-java-version-return-error-opening-registry-key-software-javas
- 以管理员身份运行regedit.exe
- 将HKEY_LOCAL_MACHINE \ SOFTWARE \ JavaSoft \ Java Runtime Environment \中的CurrentVersion更改为12.0.2
- 创建:HKEY_LOCAL_MACHINE \ SOFTWARE \ JavaSoft \ Java Runtime Environment \ 12.0.2
- 在HKEY_LOCAL_MACHINE \ SOFTWARE \ JavaSoft \ Java Runtime Environment \ 12.0.2 \中将JavaHome设置为:C:\ Program Files \ Java \ jdk-12.0.2
- 打开cmd并输入:java -version
- 错误类型:java
- cmd将返回文件夹或少数文件夹;在资源管理器中,转到以\ javapath结尾的那个,例如C:\ Program Files(x86)\ Common Files \ Oracle \ Java \ javapath
- 应该有文件:java.exe javaw.exe和javaws.exe
- 如果要删除它们,请重新打开cmd并键入java -version
现在它应该显示正确的版本而没有错误
- 在八度中,键入javachk jvm
如果ans为空,那么Java应该可以正常工作了
在显示的屏幕截图中,您安装了JDK(开发工具包),而不是JRE(运行时环境)。您所需的必需命令在那里,但是操作系统不会自动识别它。为此,必须在系统的PATH环境变量中包含JDK的'java / bin'目录。下次运行Octave时,它将找到并识别Java环境。