溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

wed前端技術(shù)Maven插件如何獲取和配置

發(fā)布時間:2021-09-27 10:54:59 來源:億速云 閱讀:157 作者:小新 欄目:開發(fā)技術(shù)

小編給大家分享一下wed前端技術(shù)Maven插件如何獲取和配置,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

  Maven插件的獲取和配置

  Maven 只是對項目的構(gòu)建過程進(jìn)行了統(tǒng)一的抽象定義和管理。至于每個階段由誰來做,Maven 自己不去實現(xiàn),而是讓對應(yīng)的插件去完成。這就是插件的作用。

  比如 maven-compile-plugin 就可以完成在 compile 階段 Java 源代碼的編譯任務(wù)。

  但是從插件本身來說,一個插件可以實現(xiàn)生命周期多個階段的任務(wù),比如 maven-dependency-plugin 就可以實現(xiàn)十多個功能:分析項目的依賴功能;列出項目的依賴樹;分析依賴的來源等。

  為方便指定執(zhí)行插件的某個功能,將插件的每個功能叫目標(biāo)。這樣就可以實現(xiàn)在哪個階段,執(zhí)行哪個插件,達(dá)到哪個目標(biāo)。比如“dependency:analyze”,表示 maven-dependency-plugin 的分析目標(biāo);“dependency:tree”表示 maven-dependency-plugin 列出依賴的目標(biāo)。

  插件同生命周期階段的綁定

  前面介紹了插件的作用和目標(biāo),但是最終的目的是要將插件的功能集成到 Maven 生命周期的相關(guān)階段中去,讓 Maven 構(gòu)建工程時自動調(diào)用插件完成指定的任務(wù)。

  應(yīng)如何讓 Maven 的生命周期同插件實現(xiàn)相互綁定,來完成實際的構(gòu)建任務(wù)呢?

  比如 maven-compile-plugin 插件的 compile 目標(biāo)能完成編譯任務(wù),而且 Maven 的 default 生命周期的 compile 階段,定義好要實現(xiàn)源代碼編譯。

  那么用戶怎樣將 maven-compile-plugin 插件的 compile 目標(biāo)綁定到 default 生命周期的 compile 階段,讓 Maven 構(gòu)建項目到 compile 階段的時候,能自動執(zhí)行插件的 compile 目標(biāo)呢?

  實現(xiàn)生命周期的階段同插件目標(biāo)的綁定,一共有兩種方式:內(nèi)置綁定和自定義綁定。

  1. 內(nèi)置綁定

  為了讓用戶方便使用 Maven,少進(jìn)行配置甚至不用配置,就需要用 Maven 構(gòu)建項目。Maven 在安裝好后,自動為生命周期的主要階段綁定很多插件的目標(biāo)。

  當(dāng)用戶通過命令或圖形界面執(zhí)行生命周期的某個階段時,對應(yīng)的插件目標(biāo)就會自動執(zhí)行,從而完成任務(wù)。

  maven-clean-plugin 插件有個目標(biāo)叫 clean,它的作用是刪除項目構(gòu)建時產(chǎn)生的輸出目錄。maven-clean-plugin 的 clean 目標(biāo),默認(rèn)就綁定在 clean 生命周期的 clean 階段。也就是說,當(dāng)執(zhí)行 mvn clean 時,Maven 在 clean 階段自動調(diào)用 maven-clean-plugin 的 clean 目標(biāo),刪除構(gòu)建的輸出目錄。

  同樣地,maven-site-plugin 插件有兩個目標(biāo):site 目標(biāo),用來生成項目站點;deploy 目標(biāo),用來將生成的站點發(fā)布到站點服務(wù)器上去。Maven 默認(rèn)將 site 目標(biāo)綁定在 site 生命周期的 site 階段;將 deploy 目標(biāo)綁定在 site 生命周期的 site-deploy 階段。

  default 生命周期就比較復(fù)雜了,不僅僅復(fù)雜在有那么多的階段,還復(fù)雜在 Java 可以打成不同的包(jar、war 和 ear 等)。不同的包在不同的階段是不一樣的綁定。

  當(dāng)然,也可以通過運(yùn)行 Maven 命令,在命令提示信息中查看階段和插件目標(biāo)的綁定。比如在 CMD 命令行窗口中輸入 Maven compile,可以查看到如圖1 日志。

  根據(jù)日志,可以查看出 default-resources 階段綁定的是“maven-resources-plugin:2.6:resources”目標(biāo);default-compile 階段綁定的是“maven-compile-plugin:2.3.2:compile”目標(biāo)。

  2. 自定義綁定

  除了 Maven 內(nèi)置的綁定外,也可以指定在某個階段綁定某個插件的某個目標(biāo)。這樣就使得 Maven 在構(gòu)建項目時能執(zhí)行更多的任務(wù)。比如,有時用戶希望在構(gòu)建工程時能將源代碼打成 jar 包(安裝 JDK 的時候是可以選擇安裝 src.jar的,這樣可以學(xué)習(xí) JDKAPI 的源代碼)。

  這樣的任務(wù),Maven 沒有內(nèi)置綁定到生命周期的階段上。所以這就需要用戶自己配置了。maven-source-plugin 中有個 jar-no-forkmub,能將項目中的主代碼打成 jar 文件。這樣就可以將該目標(biāo)綁定到 default 生命周期的指定階段,比如 verify 階段。

以上是“wed前端技術(shù)Maven插件如何獲取和配置”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI