2017年2月8日 星期三

Maven 部署專案時,附上 javadoc 或原始碼

一般在 pom 檔沒有特別設定時,使用 mvn deploy 指令只會把函式庫打包後的 jar 送上 Maven Repository Server
但這樣會造成其他使用者在使用這個函式庫時,沒有 javadoc 可以即時查閱。
因此改成以下的指令 [1],讓 Maven 打包時順便一起把 javadoc 打包起來會比較好些。

mvn javadoc:jar deploy

正常狀況下,上面的指令就會把 jar 跟 javadoc 全都一起送上 Maven Repository Server。
不過…如果程式碼裡有任何不完整的 javadoc,或者違反規格之類的,在產生 javadoc 過程可能會出錯
而原因似乎是 Java 8 有內建 doclint 在做格式檢查~
雖然有檢查是好事,並且理想的解決方法就是補上所有缺少的資訊、解決所有不合法的格式
不過有時還是想要讓他略過檢查就好 XD
這時,可以在 pom 裡追加一個屬性 [2],讓 Maven 不要進行 doclint 檢查。

<properties>
    <additionalparam>-Xdoclint:none</additionalparam>
</properties>

另外,如果想連原始碼一起打包,可以加上 source:jar 到指令裡 [1]。

參考資料
  1. How to deploy SNAPSHOT with sources and JavaDoc?
  2. Turning off doclint in JDK 8 Javadoc

沒有留言: