在最近的许多情况下,但现在我尝试使用安装程序,它会抛出错误并显示“Java 未安装”之类的内容,即使 JAVA_HOME 设置为 Windows 10 64x 的 AdoptOpenJDK 安装程序安装的 JDK。我找不到修复它的方法,无论如何,今天我尝试安装 Netbeans 8.2,它显示了此错误,但我发现您可以将参数传递给安装程序 (--javahome ),然后错误消息从“JDK找不到(在你的机器中)”到“无法找到 JRE(在给定的位置)”,这更奇怪。
然后我将 JRE 作为 javahome 传递,它起作用了,这让我感到惊讶,在安装程序中,您可以选择 netbeans 应使用哪个 jdk,并且它正确显示了已安装的 jdk。苏……为什么会这样?
编辑:
JAVA_HOME 是“C:\Program Files\AdoptOpenJDK\jdk-13.0.2.8-hotspot\”
并且在安装期间我没有更改它
--javahome 参数是“C:\Program Files\AdoptOpenJDK\jdk8u242-b08-jre”
安装后我意识到它不在路径中
但我 100% 确定“C:\Program Files\AdoptOpenJDK\jdk-13.0.2.8-hotspot\”在 Path 中,这很奇怪,因为据说根据我读到的内容,AdoptOpenJDK 安装程序会安装带有 JRE 的 JDK ?或者至少 JDK 不应该是 JRE 的超集吗?
编辑2:
由于这个答案,我已将 JDK 路径保留为 JAVA_HOME。JAVA_HOME应该指向JDK还是JRE?
你的实际问题不清楚,但这看起来像是一个 X-Y 问题。您真正的问题是安装 NetBeans 8.2 时遇到问题(对吗?),但您错误地得出结论,认为原因与您的设置有关JAVA_HOME。事实并非如此。
First, 来自 NetBeans 8.2 下载页面, 注意"需要 JDK 8用于安装和运行 Java SE、Java EE 和所有 NetBeans 捆绑包。NetBeans 8.2 无法在 JDK 9 或更高版本上运行".因此,至少部分问题是您尝试将 JDK 13 与 NetBeans 8.2 一起使用。那是行不通的。
二、不需要设置环境变量JAVA_HOME使 NetBeans 8.2 正常工作。我只是故意破坏我的设置JAVA_HOME,NetBeans 8.2 重新启动并工作正常。这是一件好事,因为您可能合法地想要设置JAVA_HOME出于与 NetBeans 完全无关的其他原因而使用某个任意 JDK,如果 NetBeans 8.2 依赖于它,这样做可能会破坏 NetBeans 8.2JAVA_HOME.
第三,NetBeans 不关心您的PATH设置任一。 (顺便说一句,NetBeans 忽略了JDK_HOME and PATH意味着您可以安装不同版本的 NetBeans,每个版本都使用不同的 JDK,并安全地同时运行它们。)
要显式指定 NetBeans 8.2 安装应使用的 JDK:
- 找到文件netbeans.conf。它是一个文本文件,位于etcNetBeans 8.2 安装目录下。
- 在任何文本编辑器中打开该文件,然后找到包含文本的行
netbeans_jdkhome
.
- 如果该行以
#
(表示注释行)删除它,然后设置netbeans_jdkhome
指定 JDK 8 安装路径。在我的 Windows 10 机器上,该行如下所示:netbeans_jdkhome="C:\Java\jdk1.8.0_221"
.
- 确保只有一个未注释的行将值设置为
netbeans_jdkhome
(这将是您的 JDK 8 安装目录),然后将更改保存到netbeans.conf并(重新)启动 NetBeans 8.2。
希望这就是解决您的问题所需要做的全部工作,但如果不是,请更新您的问题以澄清需要解决的确切问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)