我有较旧的NetBeans 6.7、NetBeans 6.9和NetBeans 7.0,它们过去在jdk1.6.0_21和jdk1.6.0_25上运行。现在我已经删除了这些jdk,只剩下jdk1.6.0_26和jdk1.7.0,但我仍然想保留旧版本的NetBeans,但现在当我运行它们时,我得到了这样的消息:

无法在指定的jdkhome C:\Program Files (x86)\Java\ jdk1.6.0_25中找到java安装 你想尝试使用默认版本吗?”

我试图找到它在哪里寻找“jdk1.6.0_25”,并更新了“C:\Program files (x86)\NetBeans 6.7”和“C:\Users\USER.nbi\registry.xml”中的一些配置文件,然而消息一直传来。我需要在哪里更改什么以指向C:\Program Files (x86)\Java\ jdk1.6.0_26?


当前回答

在Windows操作系统下,打开cmd。

转到NetBeans文件下载的目录。

执行如下命令。JDK路径可能与我提到的路径不同。

netbeans-8.2-windows.exe --javahome "C:\Program Files\Java\jdk-9.0.1"

其他回答

感谢Kasun Gajasinghe的提示,我在“建议”链接中找到了解决方案。更新以下文件(替换7。使用NetBeans版本):

C:\Program Files\NetBeans 7.x\etc\netbeans.conf

更改下面的行以指向Java安装的位置:

netbeans_jdkhome="C:\Program Files\Java\jdk1.7xxxxx"

编辑netbeans.conf可能需要管理员权限。

我也收到了这条消息,因为今天我决定将不同的JDK重新定位到同一个目录中。我已经决定通过Windows的程序管理器全部卸载。在那之后,我当然有下面的信息。

无法在指定的jdkhome C:\Program Files (x86)\Java\ jdk1.7.0_60中找到java安装。你想尝试使用默认版本吗?”

重新安装JDK并不能解决这个问题。好吧,你可以在Tools→Java平台菜单中配置,但在我的情况下,我必须修复我的netbeans.conf文件。

我写了下面这行:

netbeans_jdkhome="C:\Program Files\Java\jdk1.7.0_60"

我把它换成:

netbeans_jdkhome="C:\devtools\Java\jdk1.8.0_25"

所有其他答案都描述了如何显式地指定Java平台的位置,如果您确实希望使用特定版本的Java,那么这样做很好。但是,如果您只想使用最新版本的JDK,并且已经将其安装在操作系统的“正常”位置,那么最好的解决方案是不指定JDK位置。相反,让NetBeans启动器在每次启动时搜索JDK。

为此,不要在命令行中指定jdkhome,并注释掉任何netbeans.conf文件中设置netbeans_jdkhome变量的行。(在哪里可以找到这些文件,请参阅其他答案。)

如果您这样做,当您安装一个新版本的Java时,您的NetBeans安装将自动使用它。在大多数情况下,这可能正是你想要的。

对于非Windows操作系统,需要修改的文件为“netbeans-8.0/etc/netbeans.conf”。

要更改的行是:

netbeans_jdkhome="/usr/lib/jvm/java-8-oracle"

注释掉旧值并插入新值。

在Windows操作系统下,打开cmd。

转到NetBeans文件下载的目录。

执行如下命令。JDK路径可能与我提到的路径不同。

netbeans-8.2-windows.exe --javahome "C:\Program Files\Java\jdk-9.0.1"