【问题标题】:Netbeans 11 Javadoc Not Appearing?Netbeans 11 Javadoc 没有出现?
【发布时间】:2019-10-03 07:48:24
【问题描述】:

我有一个与Javadocs are not appearing on Apache netbeans for java 10 非常相似的问题,因为我似乎无法将 javadoc 支持添加到我的 Apache Netbeans 11 版本或我正在处理的 maven 项目中。

这是我的概述:

如您所见,javadoc 已添加到 URL 部分,但它不会出现在代码编辑器中,即使在重新启动后也是如此。

我添加的网址:https://docs.oracle.com/en/java/javase/11/docs/api/index.html

但这不起作用。

我该如何解决这个问题?

【问题讨论】:

标签: java netbeans javadoc


【解决方案1】:

我还没有看到有人设法将 Javadoc 11 添加到 Netbeans 11。

但有一种变通方法似乎适用于许多 JDK 类,但并非适用于所有类。如果有人知道如何解决所有 JDK 类的问题,请说出来,谢谢。

这是解决方法,在带有来自 Ubuntu 存储库的 Openjdk11 的 Ubuntu 18 Linux 下运行良好,并且可能也在其他平台下运行:


首先,我们必须如何添加 Javadoc,这很奇怪。在 NB 的菜单 Tools → Java Platforms 中有一个标签 SourcesJavadoc

1)我首先尝试使用标签Javadoc,并且必须添加所有以“java”开头的文件夹。来自解压缩的 Javadoc11 包的主文件夹“javadoc/api/”。这样,一些 JDK 函数会显示正确的 Javadoc 弹出帮助,但是许多函数只显示一个空白区域,例如在 Netbeans 中我输入时:

BigInteger big;
big. _

然后弹出窗口列出所有 BigInteger 函数,但它们的 Javadoc 都是空的。

所以我尝试了另一种方法:


2) 从标签 Javadoc 中的同一 NB 菜单 Tools → Java Platforms 我删除了所有条目,并使用了其他 tab Sources 我添加了所有以“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.

【讨论】:

    【解决方案2】:

    虽然 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 zip 中的文件结构略有不同捆绑。

    以下是使这两个功能都起作用的解决方案:

    • 从 Openjdk 的网站下载适用于 Linux 的 Openjdk11 zip 包:https://jdk.java.net/archive/
    • 解压,使其内容在文件夹中,例如“openjdk11”
    • 在 NB 中转到菜单“工具 → Java 平台”。添加一个新平台并选择解压后的文件夹(例如 openjdk11)。 NB 在 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”),并且将获得 apt-automatic 更新,但是您的项目使用解压缩的 JVM 来运行。不过这没什么大不了的,因为 NB 总是使用其使用过的 JVM 或项目的 JVM 的新实例来运行项目。

    【讨论】:

    • 对于 Fedora 用户:只需尝试安装 javadoc 包并将 /usr/share/javadoc 中的文件夹添加到 Java 平台配置中。为我开箱即用。
    • 这也适用于 Netbeans 12.4 上的 Java 16。
    【解决方案3】:

    如果您使用的是基于 Ubuntu 或 Debian 的操作系统,则在 apt 存储库中,有一个特定的包用于与您需要安装的 JDK 分开的文档。完成后,您只需要在文档中搜索 api 文件夹并在平台配置中进行设置。

    1. 搜索您的 Java 版本包:
    sudo apt-cache search java* | grep jdk
    
    1. 安装你需要的版本(我已经安装了两个):
    sudo apt-get install openjdk-8-doc openjdk-11-doc
    
    1. 搜索 api 文件夹,我在 /usr/lib/jvm/java-11-openjdk-amd64/docs/api 中找到了 OpenJDK-11,在 /usr/lib/jvm/java 中找到了 OpenJDK-8 -8-openjdk-amd64/docs/jdk/api。该位置取决于您的 JDK 的安装位置,但如果您使用 apt 安装它,则应该是一个非常相似的路径。

    2. 在 Netbeans 的平台配置中设置该路径。

    使用 Ubuntu 20.04 和 Netbeans 12 完成。希望对其他人有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-03-12
      • 1970-01-01
      • 2011-08-25
      • 2014-02-08
      • 2012-03-27
      • 2015-06-05
      相关资源
      最近更新 更多