2017-09-04 101 views
0

如何創建鏈接到脫機模式下本地文件系統中的文件的javadoc?將脫機模式下的javadoc鏈接配置爲鏈接到本地​​副本

我正在構建java包的javadocs,並且希望外部包(包括java.lang)的鏈接指向本地副本。這是通過設置links屬性,像這樣:

<configuration> 
    <links> 
    <link>/usr/share/doc/default-jdk-doc/api/</link> 
    </links> 
</configuration> 

但是,脫機工作時links屬性被忽略,即使 鏈接到的javadoc的本地副本。我的理解是,在這種情況下,我應該使用offlineLinks,但我無法使其工作。

我看到的所有文檔offlineLinksurl設置爲一個外部URL,location設置爲本地文件。用例似乎是通過使用本地副本創建到外部服務器的鏈接。我試圖將urllocation設置爲相同的值,但這似乎被忽略。

<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

javadoc程序將正確處理-links選項,即使它是本地目錄並且沒有沒有Internet連接。問題是maven javadoc插件在離線模式下忽略links屬性。解決的辦法是直接通過additionalparam屬性傳遞選項,javadoc的程序,像這樣:

<configuration> 
    <additionalparam>-link /usr/share/doc/default-jdk-doc/api/</additionalparam> 
</configuration> 

這有兩個問題:

  1. 它變得太長,如果鏈接到許多不同的軟件包。理論上,應該能夠在單個參數additionalparam中傳遞多個-link選項。
  2. additionalparam已棄用。但是,沒有其他maven屬性可以直接傳遞javadoc選項,因此希望它們不會實際刪除它。

offlineLinks屬性,它將映射到命令行選項-linkoffline似乎確實需要一個外部URL。我不確定這是javadoc程序還是maven javadoc插件中的需求。