我的 Apache NetBeans 11.1 和 JDK 11 运行良好。
然后NetBeans升级到11.3,不知什么原因看不到JDK,所以我下载了JDK 14,添加到NetBeans Platforms。一切正常。
Ubuntu 升级到 19.10。
无论我单击多少次,Apache Netbeans 现在都无法从收藏夹图标中工作。
我删除了 Ubuntu 软件的 NB,然后从终端重新安装它,但由于从存档中获取 jdk 的一些错误而停止,所以我从 snap 安装它。
我必须打开终端并运行
netbeans --jdkhome /home/username/myjavafolder/jdk-14.0.1
它工作正常,并且Tools\Java Platforms
显示 JDK 14 是默认平台。但是我不想每次运行 NetBeans 时都打开终端。
在 Ubuntu 软件中显示 Apache NetBeans 已安装,但是当我右键单击收藏图标并单击“显示详细信息”时,Ubuntu 软件显示“无法找到 netbeans_netbeans.desktop”
我把netbeans.conf
指向上面的jdkhome改了。
我也更改了JAVA_HOME
变量(使用JAVA_HOME=$"/home/username/myjavafolder/jdk-14.0.1"
,但重新启动后,由于某种原因它被重置(当echo $JAVA_HOME
我得到一个空行时)
在终端中使用which
显示 netbeans 位于snap/bin/netbeans
,但在此文件属性中显示其链接目标为/usr/bin/snap
. 这有什么关系吗?
谢谢。
我认为有几件事与您的问题不一定相关。
1.Java
您已将 JDK 设置在一个不寻常的文件夹中,我敢打赌 Ubuntu 有一半或不知道它。如果你输入命令
which java
和你会得到什么which javac
?通常,您可以使用命令更新您的默认 JDK
sudo update-alternative --config java
(然后使用 javac 更新)。然后终端将显示它找到的所有 JVM / JDK,并在当前使用的前面带有一个星号。您可以输入要使用的号码来代替当前号码。这可能已经解决了您的问题。如果确实如此,那么完美,不要进一步检查,这是唯一缺少的东西。
附带说明,如果要永久设置 JAVA_HOME 变量,则必须编辑 ~/.bashrc 文件,并在此文件末尾添加:
export JAVA_HOME=/home/username/myjavafolder/jdk-14.0.1
但我不确定这是否会导致您的问题,所以这是更多信息...
请注意,如果您希望将 JDK 14 仅用于 NetBeans,而将另一个 JDK 用于您的系统,那么您应该将 update-alternatives 命令指向所需的系统 JDK,并在 netbeans.conf 中指定您的 NetBeans JDK(您似乎已经这样做了)实际上)。
2.NetBeans 启动器
根据您的说法,NetBeans 图标不再启动 NetBeans。也许您可以使用图形菜单编辑器来检查单击该图标时实际执行的命令?您还应该检查当前命令在做什么,它试图执行哪个 NetBeans 二进制文件,并检查这个二进制文件是否确实存在。
我怀疑由于不同的连续 NetBeans 位置或安装可能会出现一些混乱,并且启动器之间没有正确更新。
您可以编辑命令,所以基本上复制/粘贴您从终端成功使用的命令。如果执行此操作,您应该能够从其图标再次启动 NetBeans,就像您从终端执行的操作一样。但我宁愿建议您修复您的 JDK 位置,因为这听起来是一种“更干净”的方式来解决您的问题。
3. NetBeans 本身
最后一件事,我想知道您的 NetBeans 在哪里,或者您在会话中安装了多少个 NetBeans。您是如何安装 NetBeans 的?您提到您编辑了 netbeans.conf 文件。它在哪里?我之所以问,是因为您似乎通过 snap 安装了 NetBeans,但如果这是正确的,那么您应该无法编辑 .conf 文件。
如果您无法通过上述任何步骤获得正常工作的 NetBeans,我建议您卸载 snap 包。图标应该已经消失了。您不应该
which netbeans
在终端中得到任何结果。如果您在步骤 2 中发现了另一个 NetBeans 安装,您也应该将其删除。如果这没问题,如果您已经修复了 JDK 路径,那么请尝试重新安装 NetBeans。
你现在应该完成了!
我希望您能让 NetBeans 使用这些步骤。如果您不提供我在回答中提到的
which
和命令的输出,我们会进一步考虑。update-alternatives