java - org - maven eclipse tutorial




當javadoc沒有附加到依賴關係時,如何在Maven的eclipse插件中引用javadocs到依賴關係 (4)

我在開發中使用Eclipse,Maven和Java。 我使用Maven來下載依賴項(jar文件和javadoc,如果有的話)和Maven的eclipse插件來為Eclipse生成.project和.classpath文件。 當下載的依賴項沒有附加javadoc時,我手動在.classpath文件中為javadoc添加一個鏈接,這樣我就可以在Eclipse中看到依賴關係的javadoc。 然後當我運行Maven的eclipse插件重新生成.classpath文件時,它當然會消除這種變化。

有沒有辦法配置Maven的eclipse插件,在運行Maven的eclipse插件時自動為javadoc添加classpath屬性?

我只對javadoc和/或源代碼不在Maven倉庫中提供依賴的問題感興趣,這種情況對我來說是最常見的。 使用downloadSources和/或downloadJavadocs屬性不會幫助解決這個問題。


有依賴的來源幫助? 你可以告訴eclipse插件使用-DdownloadSources=true來下載這些插件(並在.classpath中引用它們)


您可以考慮通過使用install-file目標手動將javadoc jar安裝到本地存儲庫並傳入-Dclassifier = javadoc選項來完全避免此問題。 一旦你這樣做,mvn生成的.classpath應該是正確的。

如果您使用遠程回購代理作為中央代理,則也可以將javadoc部署到該回購,然後使用該代理的其他人也將自動獲取javadoc。


我正在運行基本上是eclipse + spring工具的STS 2.8.1; 在現有的Maven項目中,我右鍵單擊項目 - > maven - >下載源文件並下載JavaDocs


通常Javadoc不主要用作依賴關係。 因為這些在編譯和運行時都不需要。 這只是在開發或調試時幫助開發人員。

假設使用java IDE Eclipse,我們可以使用所引用的java文檔。 以下是我們可以將javadocs / sources與各個jar相關聯的方法。

1.如果是非Maven項目:

下載javadocs jar或壓縮文件,無論可用並將其放置在某個目錄中。 右鍵單擊IDE Eclipse中的應用程序項目,單擊屬性,然後選擇Java Build Path,然後選擇Java Build Path下的選項卡Libraries。 現在展開你想用java docs / source鏈接的jar。 選擇Javadoc位置鏈接,然後單擊編輯按鈕,出現一個新窗口,我們需要選擇javadocs jar路徑。 點擊確定,我們已經把javadoc / source與各自的jar包聯繫起來了。

2.如果這是一個maven項目

如果我們使用的是Maven項目,那麼在Project Explorer視圖中的項目下,轉到Maven依賴關係下的jar文件,如下所示。 現在右鍵單擊要添加Javadoc / source的jar文件,選擇Maven,然後單擊要鏈接到項目的Javadoc或Source。 現在,IDE將自動下載所需的javadoc / source,並將其鏈接到項目中相應的jar。

您可以通過右鍵單擊IDE中的項目並單擊Java Build Path,然後選擇Java Build Path下的Libraries選項卡,然後展開所需的jar,在這裡單擊Edit按鈕時將會看到鏈接的路徑Javadoc / Source與相應的jar,如下圖所示。

3.如果是Maven項目,我們正在設置默認行為:

Eclipse會在開始的時候隨著主要的jar一起在下載javadoc / source。 默認將指令設置為Maven來下載項目中鏈接的所有jar文件的Javadoc / sources。

單擊Windows - 首選項 - 選擇Maven,然後單擊複選框Download Artifact Javadoc,如下所示

現在點擊apply並保存它,現在當你創建新的Maven項目時,默認情況下,Javadoc將被下載並鏈接到項目中的所有相關jar。
您可以通過右鍵單擊項目和屬性進行驗證,並且在Java Build path下可以看到javadoc與所有的jar相關聯,如下所示。

如果您的項目是Maven項目,那麼最好使用第二種方法,因為通過使用這種方法,IDE和Maven負責下載正確版本的Javadoc / source,並將其與相關jar鏈接起來。

方法3是有點昂貴,因為javadoc / sources將被下載所有依賴的jar,可能你對javadocs / sources沒有興趣。





maven-2