如何在离线模式下创建链接到本地文件系统中文件的javadoc?
我正在为java包构建javadocs,并希望外部包(包括java.lang
)的链接指向本地副本。这可以通过设置links
属性来实现:
<configuration>
<links>
<link>/usr/share/doc/default-jdk-doc/api/</link>
</links>
</configuration>
但是,离线工作时会忽略links
属性,即使是
链接到javadocs的本地副本。我的理解是,在这种情况下,我应该使用offlineLinks
,但我无法使其发挥作用。
我在offlineLinks
看到的所有文档都将url
设置为外部URL,将location
设置为本地文件。用例似乎是通过使用本地副本创建到外部服务器的链接。我试图将url
和location
设置为相同的值,但这似乎被忽略了。
<offlineLinks>
<offlineLink>
<url>/usr/share/doc/default-jdk-doc/api/</url>
<location>/usr/share/doc/default-jdk-doc/api/</location>
</offlineLink>
</offlineLinks>
我创建了一个最小的例子github gist,我这样称呼:
mvn --offline javadoc:javadoc
它有一个包含String
参数的包和方法。我希望javadocs创建一个指向文档本地副本的链接,但我不断将String
链接到docs.oracle.com
。
答案 0 :(得分:0)
javadoc程序将正确处理-links
选项,即使它是本地目录并且没有没有Internet连接也没有。问题是maven javadoc插件在离线模式下忽略links
属性。解决方案是通过additionalparam
属性将该选项直接传递给javadoc程序,如下所示:
<configuration>
<additionalparam>-link /usr/share/doc/default-jdk-doc/api/</additionalparam>
</configuration>
这有两个问题:
-link
参数中传递多个additionalparam
选项。additionalparam
。但是,没有其他maven属性可以直接传递javadoc选项,所以希望它们不会实际删除它。映射到命令行选项offlineLinks
的-linkoffline
属性似乎确实需要外部URL。我不确定这是javadoc程序或maven javadoc插件中的要求。