注册表引用了不存在的Java运行时环境安装或运行时已损坏错误

注册表引用了不存在的Java运行时环境安装或运行时已损坏错误,java,java-11,zap,Java,Java 11,Zap,我有一个Owasp Zap程序,在java8和Windows10上运行良好。最近,我升级到了Java11,因为我们的自动化项目不会在其他任何东西上运行。我已经从我的C:驱动器中删除了Java 8文件夹,并编辑了环境变量,除Zap外,其他一切都正常工作,它给出了错误: 此应用程序需要Java运行时环境1.8.0。注册表引用了不存在的Java运行时环境安装,或者运行时已损坏 我去了我的注册表,但在Computer\HKEY\u LOCAL\u MACHINE\SOFTWARE\JavaSoft\下,

我有一个Owasp Zap程序,在java8和Windows10上运行良好。最近,我升级到了Java11,因为我们的自动化项目不会在其他任何东西上运行。我已经从我的C:驱动器中删除了Java 8文件夹,并编辑了环境变量,除Zap外,其他一切都正常工作,它给出了错误:

此应用程序需要Java运行时环境1.8.0。注册表引用了不存在的Java运行时环境安装,或者运行时已损坏

我去了我的注册表,但在
Computer\HKEY\u LOCAL\u MACHINE\SOFTWARE\JavaSoft\
下,只有11.0.5 jdk的参考

我的环境变量中没有任何东西指向旧的jre,我可以验证

我在控制面板\所有控制面板项目\程序和功能中没有java 8,尽管我可能在删除它时手动删除了它,并且应该运行一个清理程序

根据这里的一些建议,我在注册表的运行库中查找了jvm.dll文件,但我甚至没有看到运行库。我也没有看到其他人提到的在他们的注册表中找到的任何与java相关的文件夹为他们解决了这个问题。这是我的注册表的外观:

我还注意到,在Control Panel>Programs中,有一个Java链接指向Java控制面板,但它是一个空白文件图标,当我单击它时,会收到消息“Application not found”


不幸的是,它占用了我的管理员权限,因此我无法卸载和重新安装Zap,但如果可能的话,我希望在本周末解决这个问题。

我已卸载旧的运行时,并从下载脱机安装。安装脱机安装后,它对我来说工作正常。

我已卸载旧的运行时,并从下载脱机安装。安装离线安装后,它对我来说运行良好。

FYI,我仍然很好奇如何解决这个问题,但是在编写了这个之后,我意识到我可以从ZAP文件夹中运行windows批处理文件,并且不需要将其作为java程序运行。我很确定如果您进行了干净的卸载,事情会正常运行。@Kingthrin很可能,这就是为什么我不能忍受orgs不给QA管理员权限,但会给DevFYI管理员权限的原因,我仍然很好奇这是如何解决的,但是在编写了这篇文章之后,我意识到我可以从ZAP文件夹中运行windows批处理文件,并且不需要将其作为java程序运行。我很确定如果你进行了干净的卸载,事情会正常运行。@Kingthrin很可能,这就是为什么我不能忍受orgs不给QA管理员权限而给Dev管理员权限的原因