1

显示标准库(java.base,...)的 Javadoc 在我的设置中运行良好。

但是为其他库包含 Javadoc 总是失败。我正在寻找一个提示,可以做些什么来解决这个问题或为这个问题的根本原因获得更多输出。

我有以下源代码:

import com.fazecast.jSerialComm.SerialPort;

public class JavaTestAoolication {
    public static void main(String[] args) {
        SerialPort.getCommPorts();
    }
}

我尝试通过菜单Tools -> Java Platforms和选项卡javadoc为这个库添加 javadoc 路径。

这会在 netbeans 配置文件中产生以下条目~/.netbeans/11.3/config/Services/Platforms/org-netbeans-api-java-Platform/default_platform.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE platform PUBLIC "-//NetBeans//DTD Java PlatformDefinition 1.0//EN" "http://www.netbeans.org/dtds/java-platformdefinition-1_0.dtd">
<platform default="yes" name="JDK 11 (Default)">
    <properties>
        <property name="platform.ant.name" value="default_platform"/>
    </properties>
    <javadoc>
...
        <resource>https://fazecast.github.io/jSerialComm/javadoc/</resource>
        <resource>file:/usr/share/htl-libjserialcomm-java/2.6.1/javadoc/api/</resource>
...
   </javadoc>
</platform>

选择上下文菜单 -> Show Javadoc onSerialPort.getCommPorts()始终会导致消息:
Cannot Perform show Javadoc here

但是链接是存在的:
https ://fazecast.github.io/jSerialComm/javadoc/com/fazecast/jSerialComm/SerialPort.html

并且本地文件夹也存在(没有符号链接):

$ ls -la /usr/share/htl-libjserialcomm-java/2.6.1/javadoc/api/com/fazecast/jSerialComm/SerialPort.html 
-rw-r--r-- 1 user user 115981 Apr  9 17:02 /usr/share/htl-libjserialcomm-java/2.6.1/javadoc/api/com/fazecast/jSerialComm/SerialPort.html

我也尝试使用file://而不是file:/. 没有成功。

任何想法如何解决这个问题?

4

2 回答 2

1

TLDR:我遇到了类似的问题,但有一个相当简单的解决方法:

  • 下载并解压缩 Fazecast 代码的源代码。
  • 在 NetBeans 中使用工具 > 库管理器来引用本地解压缩的源。

以下是详细信息:

  • 转到https://fazecast.github.io/jSerialComm/并选择下载 zip 文件的选项,如屏幕右上角所示。
  • 下载的文件名为Fazecast-jSerialComm-v2.6.1-0-gf3d1e89.zip。解压那个。项目的*.java源文件将在解压缩的目录...\Fazecast-jSerialComm-v2.6.1-0-gf3d1e89\Fazecast-jSerialComm-f3d1e89\src\main\java\com\fazecast\jSerialComm中。
  • 在 NetBeans 中,选择Tools > Library Manager,然后单击New Library...Fazecast创建一个条目。然后,对于那个新条目:
    • 单击Classpath选项卡并单击Add JAR/Folder...按钮,然后导航到您下载的jSerialComm-2.6.1.jar
    • 单击Sourcescom.fazecast选项卡并导航到解压缩的源目录中包的父目录。就我而言,这是D:\Downloads\FazecastJSerialComm\Fazecast-jSerialComm-v2.6.1-0-gf3d1e89\Fazecast-jSerialComm-f3d1e89\src\main\java
    • 这是违反直觉的,但您无需在Javadoc选项卡上输入任何内容!

完成后,关闭并重新打开调用 Fazecast 方法的源文件,javadoc 应该可以工作。这是一个示例SerialPort.getCommPorts(),我在其中插入HELLO WORLD!!!了该方法的 javadoc 以证明正在访问本地源:

FazecastJavadoc

笔记:

  • 我的环境是 Windows 10、NetBeans 11.3 和 JDK 14,我创建了一个简单的 Ant 项目。
  • 您可以使用 Fazecast 打开关于无法从 NetBeans 访问在线 javadocs的问题报告,因为我认为这不是 NetBeans 问题。您还可以要求他们考虑为 jSerialComm 提供可下载的 javadoc 文件。
  • 在 NetBeans 中链接到 Fazecast 源的另一个好处是,您可以通过单击javadoc 窗口中的在编辑器中打开源图标来打开其代码,如上面的屏幕截图所示。如果光标位于 Fazecast 方法上,导航 > 转到源CTRL + Shift + B也可以工作。
于 2020-04-13T19:22:14.460 回答
0

如果您使用的是 maven 项目,那么有一个非常好的功能。将库添加到 pom.xml 后,进入项目树,找到您的库,右键单击 -> 下载 Javadoc。

在此处输入图像描述

就是这样!没有麻烦。

在此处输入图像描述

于 2020-04-13T20:01:38.407 回答