You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Ubuntu 18.04+NetBeans 10.0+OpenJDK11出现java.lang包找不到致命错误求助

解决NetBeans 10.0 + OpenJDK 11在Ubuntu 18.04下找不到java.lang的问题

我之前在Ubuntu环境下折腾NetBeans和JDK的时候也碰到过类似的核心类库找不到的问题,结合你的情况,给你几个具体的排查和修复步骤:

1. 确认NetBeans的JDK平台配置

打开NetBeans后,依次点击Tools > Java Platforms

  • 检查列表里是否已经添加了OpenJDK 11,路径是否指向Ubuntu下的标准JDK目录(一般是/usr/lib/jvm/java-11-openjdk-amd64/
  • 如果没有添加,点击Add Platform,选择Standard Java SE,然后浏览到上述JDK目录完成添加
  • 最后把这个OpenJDK 11设置为默认平台(点击列表里的JDK,再点Set as Default

2. 验证OpenJDK 11的完整性

虽然java -version显示正常,但有可能JDK的核心类库文件缺失。执行以下命令检查:

ls /usr/lib/jvm/java-11-openjdk-amd64/lib/

你应该能看到modules目录(JDK 9+采用模块化结构,替代了旧的rt.jar)。如果目录缺失或者内容不全,重新安装完整的JDK包:

sudo apt-get install --reinstall openjdk-11-jdk

3. 修正NetBeans的启动JDK配置

有时候NetBeans会默认使用系统里的其他JDK版本,导致项目创建时出错。找到NetBeans的配置文件:

~/netbeans-10.0/etc/netbeans.conf

编辑这个文件,找到netbeans_jdkhome这一行,修改为指向OpenJDK 11的路径:

netbeans_jdkhome="/usr/lib/jvm/java-11-openjdk-amd64"

保存后重启NetBeans,再尝试创建新项目。

4. 重置NetBeans用户缓存

如果是项目模板或者用户配置损坏导致的问题,可以删除NetBeans的用户缓存目录,重置到初始状态:

rm -rf ~/.netbeans/10.0/

重启NetBeans后,重新尝试创建Java项目。

如果以上步骤都无效,建议你升级NetBeans到11.x版本——NetBeans 10.0对JDK 11的支持还存在一些兼容性小问题,而11.x版本对JDK 11的适配更完善,大概率能解决这个问题。

内容的提问来源于stack exchange,提问作者Romain CAILLIERE

火山引擎 最新活动