Ubuntu 23.10中NetBeans Snap无法识别OpenJDK Snap的问题求助
解决NetBeans Snap无法识别OpenJDK Snap的问题
问题说明
在Ubuntu 23.10系统中安装NetBeans Snap包和OpenJDK v22 Snap包后,执行netbeans命令时出现错误:
Cannot find java. Please use the --jdkhome switch.
已尝试在.bashrc中添加source /var/snap/openjdk/1735/openjdk.env,该操作能让java -version正常识别OpenJDK,但NetBeans仍无法找到JDK,OpenJDK Snap的相关路径为/var/snap/openjdk/1735/openjdk.env。
解决方案
Snap包运行在独立沙箱环境中,普通环境变量配置无法穿透到NetBeans的沙箱,可通过以下几种方法解决:
方法1:启动时指定--jdkhome参数
- 先查看OpenJDK的实际安装路径:
输出内容中会包含类似cat /var/snap/openjdk/1735/openjdk.envJDK_HOME=/var/snap/openjdk/1735/jdk的路径信息 - 用该路径启动NetBeans:
netbeans --jdkhome /var/snap/openjdk/1735/jdk
方法2:修改NetBeans启动配置文件
如果不想每次启动都手动加参数,可以修改NetBeans的配置文件:
- 打开Snap版NetBeans的配置文件:
nano ~/snap/netbeans/current/etc/netbeans.conf - 找到
netbeans_jdkhome行,去掉开头的注释符#,并设置为OpenJDK的路径:netbeans_jdkhome="/var/snap/openjdk/1735/jdk" - 保存退出后,直接执行
netbeans命令即可正常启动。
方法3:通过snap connect关联两个Snap包
部分Snap包支持通过接口关联共享资源,执行以下命令建立NetBeans和OpenJDK的关联:
sudo snap connect netbeans:jdk openjdk:jdk
执行完成后重启NetBeans,检查是否能自动识别JDK。
内容的提问来源于stack exchange,提问作者user23524156
相关产品推荐
相关产品推荐

