jdk java netbeans_关于java:如何设置运行JDK的Netbeans?

我有较旧的NB6.7,NB6.9,NB7.0,它们曾经在jdk1.6.0_21和jdk1.6.0_25上运行。 现在,我删除了那些JDK,只剩下了jdk1.6.0_26和jdk1.7.0,但是我仍然想保留旧的NB,但是现在当我运行它们时,我得到了以下消息:

"Cannot locate java installation in specified jdkhome C:\Program Files

(x86)\Java\jdk1.6.0_25

Do you want to try to use default version ?"

我试图找到它在寻找" 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?

感谢KasunBG的技巧,我在"建议"链接中找到了解决方案,更新了以下文件(用您的Netbeans版本替换7.x):

C:\Program Files

etBeans 7.x\etc

etbeans.conf

更改以下行以将其指向您的Java安装位置:

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

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

此解决方案适用于当前版本NB 7.3。

在用Ubuntus 13.04上的Android开发用Oracles Java替换OpenJDK之后,我遇到了这个问题。该文件位于usrlocalnetbeans-7.3etcnetbeans.conf中,我的调整行如下所示:netbeans_jdkhome="usrjavajdk1.7.0_21"

这一直对我有用,但是最近不起作用了,我无法找到除您之外的任何解释。偶然地,我想以管理员身份编辑该文件,但这确实具有正确的效果。 Windows 7 Enterprise和Windows 8 Pro以某种方式为我维护了此文件的两个版本(请参见superuser.com/q/680110/47313)

@asciimo为了完成操作,您甚至可以通过在~.netbeansversionetc下编写覆盖usrlocal...属性文件的netbeans.conf来基于用户自定义属性。 (我假设usrlocalnetbeans-7.3etc是您的发行版安装文件夹-我正在使用自定义文件夹中的手动安装版本进行开发,并且不能100%确定-。)

注意:从Netbeans 8开始,在C:\Users\You\AppData

oaming

etBeans\8.0\etc

etbeans.conf中也有一个netbeans.conf。

@OldCurmudgeon在我的情况下,当我手动创建文件时,您提到的文件和etc dir不存在,但是netbeans_jdkhome起作用了。谢谢!

与当前的NetBeans 8.0.1完美配合!

如该文件中的注释所述,您可以注释掉该行,以使启动器决定使用哪个版本。通常,这可以自动选择最新版本。

@OldCurmudgeon不适合我。

请注意以下建议:至少在Windows 7下,需要管理员权限才能编辑netbeans.conf。我尝试在没有管理员权限的情况下编辑文件,尽管该文件似乎可以正常工作,但显然Windows实际上将更新的文件保存为单独的副本,该副本仅可见通过Windows资源管理器给我。 NetBeans运行时,它将读取原始文件,该文件仍引用旧的JDK。 Windows方面的怪异而令人困惑的行为。

解决方案对于Netbeans 8.1仍然有效,在安装过程中错误地将jdk指向/ usr的目录更改为在我的fedora框上将指向的文件部分更改为/ usr / lib / jvm / java,并且它再次具有Java功能!

转到Tools-> Java Platforms。在那里,单击"添加平台",将其指向C:\Program Files (x86)\Java\jdk1.6.0_25。您可以设置另一个JDK版本或删除现有版本。

oracle(sun)站点中建议的另一种解决方案是,

netbeans.exe --jdkhome"C:\Program Files\jdk1.6.0_20"

我在6.9.1上尝试过。您也可以更改每个项目的JDK。您需要通过Java Platforms对话框设置可用的JDK。然后,转到Run-> Set Project Configuration-> Customize。

之后,在打开的对话框中转到Build-> Compile。设置版本。

感谢您的提示,我在"建议"链接中找到了解决方案。

Netbeans 8.2中没有Java Platforms菜单项

对于不使用Windows的用户,要更改的文件为netbeans-8.0/etc/netbeans.conf

并且要更改的行是:

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

注释掉旧值并插入新值

这对我使用Ubuntu 18.04和NetBeans IDE 8.2起作用。谢谢!

作为对Windows 7及更高版本上的您有用的解决方案-如果您使用:

C:\Program Files\Java>mklink /D jdk8 jdk1.8.0_25

您将获得一个Symbolic Link文件夹,只要有新的JDK出现,就可以对其进行调整。

然后,您需要做的就是设置您的

netbeans_jdkhome="C:\Program Files\Java\jdk8"

(在Netbeans 8的两个位置),您无需再次编辑配置。每次JDK更新时,只需调整符号链接。

我也收到了此消息,因为今天我决定将不同的jdk移到同一目录中。我决定通过window的程序管理器全部卸载。之后,我当然会收到以下消息。

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

全新安装的jdk无法解决问题。好的,您可以在工具> Java平台菜单中进行配置,但就我而言,我必须修复netbeans.conf

我有下面的线

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

我将其替换为

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

您可能只想注释掉那一行。在这种情况下,Netbeans将在启动时搜索并找到最新版本。

它不能完全回答您的问题,但是为了解决问题,

您可以创建具有以下内容的.cmd文件:

start netbeans --jdkhome c:\path\to\jdk

或在Netbeans的快捷方式中设置以上选项。

所有其他答案都描述了如何显式指定java平台的位置,如果您确实要使用特定版本的java,这很好。但是,如果您只想使用最新版本的jdk,并且已将其安装在操作系统的"正常"位置,那么最好的解决方案是不指定jdk位置。而是让Netbeans启动器在每次启动时搜索jdk。

为此,请不要在命令行上指定jdkhome,而是在任何netbeans.conf文件中注释掉设置netbeans_jdkhome变量的行。 (有关在何处查找这些文件,请参阅其他答案。)

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

如果您已经在NetBeans中拥有一个项目,并且希望更改编译器(例如从1.7到1),那么您还需要更改该项目的Java源代码编译器。

右键单击项目,然后选择如下所示的属性:

68bb626345d81ed141f656c1c7264a03.png

然后检查项目是否在下面圈出了必要的来源:

324494084e1873a0416c565ad70cdc31.png

然后检查该项目的Java编译器是否正确:

18290f672a96feaf725c736a5dbbfd52.png

在Windows中打开cmd

转到您的netbeans下载的目录

然后在命令JDK路径下运行可能与我提到的路径不同

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

如果您在netbeans中现有的安装中遇到问题,可以在这里找到详细信息

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值