缺少JDK,需要运行一些NetBeans模块

Cla*_*los 40 java openjdk netbeans jdk1.6 java-8

完整的错误消息:JDK缺少和需要运行一些NetBeans模块请使用--jdkhome命令行选项来指定JDK安装或看到http://wiki.netbeans.org/FaqRunningOnJre以获取更多信息.

一些细节:我刚刚第一次在Linux mint上安装了Netbeans,当我启动它时打开模块时会出现此错误消息.但我确实安装了jdk.

$ java -version

java version "1.8.0_66"
Java(TM) SE Runtime Environment (build 1.8.0_66-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.66-b17, mixed mode)
Run Code Online (Sandbox Code Playgroud)

$ javac -version

javac 1.8.0_66
Run Code Online (Sandbox Code Playgroud)

小智 69

找到该文件 [netbeans installation directory]/etc/netbeans.conf

幸运的是,Linux有一个find帮助器 find /home/ -name "netbeans.conf,你可以在其中更改/home/到你想要搜索的位置.

我找到了 /usr/local/netbeans-8.1/etc/netbeans.conf

一旦找到该文件,就需要设置以下属性:

netbeans_jdkhome="[jdk_path]"
Run Code Online (Sandbox Code Playgroud)

你可以在哪里找到jdk_path:

update-alternatives --config java
Run Code Online (Sandbox Code Playgroud)

在我的情况下,我发现它 /opt/java/jdk1.8.0_191

  • 在我使用open-jdk的系统上,路径是:/ usr/lib/jvm/java-8-openjdk-amd64 (3认同)
  • 在 Windows 上,它位于 Netbeans 安装目录中,例如 C:\Program Files\NetBeans 8.1\etc (2认同)

rmc*_*hee 6

[已解决] 对于 Mac OSX 10.11 (El Capitan)。对于其他基于 Unix 的系统,解决方案可能类似。

问题可能是因为我在安装jdk之前不小心安装了jre。我卸载了 jre,安装了 jdk 并重新安装了 NetBeans,但问题(弹出窗口)仍然存在。然而,修复相当简单。

1. 确保 NetBeans 没有运行。

2.确保安装了jdk。

3.确定jdk的位置:
可以通过输入以下内容(在终端中)来确定 jdk 位置:

$ /usr/libexec/java_home

对于我的系统,输出是:
/库/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home

4. 编辑 NetBeans 配置文件以指示 jdk 的位置。
在此 Netbeans 配置文件(或您的 NetBeans 版本的等效文件)底部附近:
/Applications/NetBeans/NetBeans 8.2.app/Contents/Resources/NetBeans/etc/netbeans.conf
注释掉以下行(在第一个字符前插入 #):

#netbeans_jdkhome="/Applications/NetBeans/NetBeans 8.2.app/Contents/Resources/NetBeans/bin/jre"

然后,添加以下行(或等效于您的 jdk 版本):

netbeans_jkdhome="/Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home"

然后,保存并退出编辑器。

5. 启动 NetBeans(不再弹出提示 jdk 丢失的窗口)。