3 回答
TA贡献1842条经验 获得超21个赞
虽然 Netbeans 11 与 Ubuntu 18 的 apt 数据包“openjdk-11-jdk”运行良好,但当涉及到 NB 的源代码编辑器的弹出式 Javadoc 和“显示 Javadoc”功能(打开外部浏览器)时,这两个 NB 功能都不会不适用于标准的 Ubuntu 安装。
因为 NB 的 Javadoc 函数似乎非常不喜欢“/usr/lib/jvm/java-11-openjdk-…”中的“openjdk-11-jdk”包的文件结构,这与可下载的 Openjdk11 压缩包中的文件结构略有不同。
这是使这两个功能都起作用的解决方案:
从 Openjdk 的网站下载适用于 Linux 的 Openjdk11 压缩包:https ://jdk.java.net/archive/
解压缩它,使其内容位于一个文件夹中,例如“openjdk11”
在 NB 中转到菜单“工具 → Java 平台”。添加一个新平台并选择解压缩的文件夹(例如 openjdk11)。注意在 src.zip 文件中找到正确的源文件夹。
最后在您的NB项目属性中,将“Libraries”中的“Java Platform”更改为您新添加的Openjdk11平台,现在NB的弹出窗口-Javadoc再次起作用。
要同时拥有 NB 的“显示 Javadoc”功能,请执行此附加步骤:
下载 Oracle 的 Javadoc11 zip 文件并解压缩。
现在再次进入NB的“Java平台”对话。在之前添加的平台“Openjdk11”中,转到名为“Javadoc”的第三个选项卡,并将“doc/api/”文件夹中的所有“java*”子文件夹添加为文件夹。
而已。希望能帮助到你。
顺便说一句,现在 NB 仍然在 Ubuntu 安装的 Openjdk11 JVM 中运行(来自 paket“openjdk-11-jdk”)并将获得自动更新,但是您的项目使用解压缩的 JVM 运行。然而,这没什么大不了的,因为 NB 总是使用其使用的 JVM 或项目的 JVM 的新实例来运行项目。
TA贡献1797条经验 获得超4个赞
如果您使用的是基于 Ubuntu 或 Debian 的操作系统,则在 apt 存储库中有一个特定的文档包,用于与您需要安装的 JDK 分开的文档。完成后,您只需要在文档中搜索 api 文件夹并将其设置在平台配置中即可。
搜索你的 Java 版本包:
sudo apt-cache search java* | grep jdk
安装你需要的版本(我安装了两个):
sudo apt-get install openjdk-8-doc openjdk-11-doc
搜索 api 文件夹,我在 /usr/lib/jvm/java-11-openjdk-amd64/docs/api 中找到了 OpenJDK-11,在 /usr/lib/jvm/java-8- 中找到了 OpenJDK-8 openjdk-amd64/文档/jdk/api. 该位置将取决于您的 JDK 安装位置,但如果您使用 apt 安装它,则应该是一个非常相似的路径。
在 Netbeans 的平台配置中设置该路径。
完成 Ubuntu 20.04 和 Netbeans 12。希望它能帮助其他人。
TA贡献1826条经验 获得超6个赞
我还没有看到有人设法将 Javadoc 11 添加到 Netbeans 11。
但是有一种解决方法似乎适用于许多 JDK 类,但并非适用于所有类。如果有人知道如何解决所有 JDK 类的问题,请告诉我,谢谢。
这是解决方法,在 Ubuntu 18 Linux 下使用 Ubuntu 存储库中的 Openjdk11 运行良好,可能在其他平台下也运行良好:
首先,我们必须添加 Javadoc 的方式很奇怪。在 NB 的菜单Tools → Java Platforms中有一个选项卡Sources and Javadoc。
1)我首先尝试使用Javadoc 选项卡,并且不得不添加所有以“java”开头的文件夹。来自解压缩的 Javadoc11 包的主文件夹“javadoc/api/”。这样,某些 JDK 函数会显示正确的 Javadoc 弹出式帮助,但是许多函数只显示空白区域,例如在 Netbeans 中输入时:
BigInteger big;
big. _
然后弹出窗口列出所有 BigInteger 函数,但它们的 Javadoc 都是空的。
所以我尝试了另一种方法:
2)从相同的 NB 菜单工具 → Java 平台选项卡中的Javadoc我删除了所有条目,并使用了另一个选项卡源,我在其中添加了所有以“java”开头的文件夹。来自解压缩的 Java11 源包(文件 src.zip)。
这种方式对于更多的 JDK 类和函数来说,它们的弹出窗口工作正常,就像提到的 BigInterger 一样。
但是,对于 java.sql 包中的某些类以及可能来自其他包的某些类,我无法使其工作。比如我输入NB:
java.sql.Statement stat;
stat. _
然后我得到一个列出所有函数的弹出窗口,但是对于许多函数,在弹出窗口中有一条消息Javadoc not found 。像这些功能:
stat.addBatch(…)
stat.execute(…)
stat.executeUpdate(…)
etc.
然而,对于以下功能,弹出窗口会显示正确的 Javadoc:
stat.cancel(…)
stat.close(…)
stat.executeBatch(…)
etc.
添加回答
举报