7

我正在尝试为我的依赖项生成实际链接到 Javadoc 的 Javadoc。我已经尝试了各种方法来生成 Javadoc,它不会为我的依赖项中的类的引用生成完全限定的类名。我想要带有简化类名的 Java 文档的链接。但是,即使使用 Java API 类名,我也没有得到任何链接并且拥有完全限定的类名。我正在使用 Java 8。我有以下配置:

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-javadoc-plugin</artifactId>
            <version>2.10.2</version>
            <configuration>
                <reportOutputDirectory>${project.basedir}/target</reportOutputDirectory>
                <destDir>javadoc</destDir>
                <windowtitle>Epiphany</windowtitle>
                <doctitle>Epiphany</doctitle>
                <show>private</show>
                <detectLinks>false</detectLinks>
                <detectOfflineLinks>true</detectOfflineLinks>
                <linksource>true</linksource>
                <detectJavaApiLink>false</detectJavaApiLink>
                <additionalparam>-Xdoclint:none</additionalparam>
                <links>
                    <link>http://docs.oracle.com/javase/8/docs/api</link>
                </links>

            </configuration>
            <executions>
                <execution>
                    <goals>
                        <goal>javadoc</goal>
                        <goal>test-javadoc</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>

我在我的 Maven 编译器配置中将源设置为 Java 8。我尝试使用detectJavaApiLinkset totrue并省略指向 Java 8 Javadoc 的链接,但 Javadoc 不会生成指向 Java API 类的链接,并且我的 Javadoc 中对它们的所有引用都是完全限定的类名。

我尝试设置detectJavaApiLinkfalse使用带有指定 URL 的上述配置(不带和不带斜杠),我得到相同的结果,以及此错误:

[WARNING] javadoc: warning - Error fetching URL: http://docs.oracle.com/javase/8/docs/api

我已经尝试根据我声明的依赖项检测链接,我尝试将其设置为 false,然后提供指向 Javadoc 的链接,但我仍然没有获得任何链接,并且我的依赖项中的类中的所有类名都是完全限定的。我到底做错了什么?包列表文件在指定的 URL 处可用,所以我不明白为什么 Javadoc 无法访问它们或位于那里的 Javadoc。

更新:

将我的 maven javadoc 插件版本更改为 2.10.3。现在,如果我设置detectJavaApiLinktrue删除 Java 8 javadoc 的链接,javadoc 会正确生成指向 Java API 类的链接并使用简化的名称。

但是,我的第 3 方依赖项和链接到他们的 Javadoc 仍然存在问题。如果我设置detectLinkstrue,它将无法找到其中任何一个的 javadoc。如果我将其设置为false并手动配置位置,我仍然会收到一条错误消息,指出它无法获取 URL:

[WARNING] javadoc: warning - Error fetching URL: https://selenium.googlecode.com/git/docs/api/java

我为 maven javadoc 插件更新的 pom 配置如下:

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>2.10.3</version>
        <configuration>
            <reportOutputDirectory>${project.basedir}/target</reportOutputDirectory>
            <destDir>javadoc</destDir>
            <windowtitle>Epiphany</windowtitle>
            <doctitle>Epiphany</doctitle>
            <show>private</show>
            <detectLinks>false</detectLinks>
            <detectOfflineLinks>true</detectOfflineLinks>
            <linksource>true</linksource>
            <additionalparam>-Xdoclint:none</additionalparam>
            <detectJavaApiLink>true</detectJavaApiLink>
            <links>
                <link>https://selenium.googlecode.com/git/docs/api/java</link>
            </links>
        </configuration>
        <executions>
            <execution>
                <goals>
                    <goal>javadoc</goal>
                    <goal>test-javadoc</goal>
                </goals>
            </execution>
        </executions>
    </plugin>

更新 2:

向 MJAVADOC 提交的缺陷报告:

https://issues.apache.org/jira/browse/MJAVADOC-427

4

0 回答 0