最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java Maven高級之插件開發(fā)詳解

 更新時(shí)間:2021年09月22日 10:34:39   作者:IT_小白鼠  
這篇文章主要介紹了Maven 插件開發(fā)的詳細(xì)整理的相關(guān)資料,需要的朋友可以看下,希望能夠給你帶來幫助

前言

終于來到了Maven的插件開發(fā),其實(shí)Maven的插件并沒有想象的那么難,剛開始講Maven基礎(chǔ)的時(shí)候就演示了一下JDK是如何打包的,Maven打包只是在JDK打包上封裝了一層而已,Maven也支持自定義插件開發(fā)

創(chuàng)建

我們先使用quickstart原型創(chuàng)建出一個(gè)Maven項(xiàng)目,在pom.xml里面引入一下依賴:

<dependency>
   <groupId>org.apache.maven</groupId>
   <artifactId>maven-plugin-api</artifactId>
   <scope>provided</scope>
   <version>3.0</version>
</dependency>
<dependency>
   <groupId>org.apache.maven.plugin-tools</groupId>
   <artifactId>maven-plugin-annotations</artifactId>
   <version>3.4</version>
   <scope>provided</scope>
</dependency>

添加好依賴后,需修改packaging打包方式:

<packaging>maven-plugin</packaging>

 之前也講過packaging有哪幾種方式,大家可以各自去在下的上篇博客看看

自定義插件

先創(chuàng)建一個(gè)類CleanTestPlugin,繼承AbstractMojo,這個(gè)抽象類是Maven插件開發(fā)需實(shí)現(xiàn)的一個(gè)類,然后實(shí)現(xiàn)里面的execute方法

 然后打包并且安裝到本地倉庫上(命令:mvn clean install)

安裝好后,可以在命令行中輸入:

 就能看到打印的日志了。

如果想要在插件中打包時(shí)傳入?yún)?shù),也是可以支持,這里就寫出幾個(gè)示例:

 然后在其他項(xiàng)目引入改插件的時(shí)候,綁定好參數(shù)即可

 由于只綁定了clean的生命周期,所以只需執(zhí)行mvn clean即可

總結(jié)

自定義插件基本結(jié)束啦,下篇講講Maven原型(archetype)吧。

是不是看完后,感覺沒啥難的,現(xiàn)在回過頭來看一下Maven自帶的maven-jar-plugin插件,其實(shí)沒有想象中那么難,只是結(jié)構(gòu)比較復(fù)雜。

看完這個(gè)之后,大家也可以去看一下SpringBoot的插件源代碼,這個(gè)插件就開發(fā)的比較厲害了,如果比較細(xì)心的任就會(huì)發(fā)現(xiàn),使用這個(gè)插件打包出來的可執(zhí)行包,執(zhí)行的類并不是執(zhí)行的類,而是通過SpringBoot同一的啟動(dòng)類去啟動(dòng) 。

本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • 詳解JAVA 常量池

    詳解JAVA 常量池

    這篇文章主要介紹了JAVA 常量池的相關(guān)資料,文中講解非常詳細(xì),示例代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • java8 計(jì)算時(shí)間差的方法示例

    java8 計(jì)算時(shí)間差的方法示例

    這篇文章主要介紹了java8 計(jì)算時(shí)間差的方法示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • 解決springboot啟動(dòng)失敗的問題('hibernate.dialect'?not?set)

    解決springboot啟動(dòng)失敗的問題('hibernate.dialect'?not?set)

    這篇文章主要介紹了解決springboot啟動(dòng)失敗的問題('hibernate.dialect'?not?set),具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • Spring Security自定義認(rèn)證器的實(shí)現(xiàn)代碼

    Spring Security自定義認(rèn)證器的實(shí)現(xiàn)代碼

    這篇文章主要介紹了Spring Security自定義認(rèn)證器的實(shí)現(xiàn)代碼,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-06-06
  • sqlserver的jdbc配置方法

    sqlserver的jdbc配置方法

    這篇文章主要介紹了sqlserver的jdbc配置方法,需要的朋友可以參考下
    2014-04-04
  • Java UrlRewriter偽靜態(tài)技術(shù)運(yùn)用深入分析

    Java UrlRewriter偽靜態(tài)技術(shù)運(yùn)用深入分析

    通常我們?yōu)榱烁玫木徑夥?wù)器壓力,和增強(qiáng)搜索引擎的友好面,都將文章內(nèi)容生成靜態(tài)頁面,這就產(chǎn)生了偽靜態(tài)技術(shù),也就是我們常說的Url Rewriter重寫技術(shù)
    2012-12-12
  • socket編程時(shí)的發(fā)送與接收數(shù)據(jù)時(shí)的問題解析

    socket編程時(shí)的發(fā)送與接收數(shù)據(jù)時(shí)的問題解析

    這篇文章主要為大家介紹了socket編程時(shí)的發(fā)送與接收數(shù)據(jù)時(shí)的問題解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-06-06
  • 深入理解Java中@Accessors和@Builder

    深入理解Java中@Accessors和@Builder

    本文主要介紹了@Accessors和@Builder使用,區(qū)別與坑,對使用這兩個(gè)注解的有一定的幫助,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-08-08
  • 關(guān)于Android觸摸事件分發(fā)的原理詳析

    關(guān)于Android觸摸事件分發(fā)的原理詳析

    觸摸事件分發(fā)機(jī)制一直以來都是Android中比較重要的一大塊,自定義view,各種復(fù)雜的自定義手勢交互都與觸摸事件分發(fā)機(jī)制關(guān)系密,下面這篇文章主要給大家介紹了關(guān)于Android觸摸事件分發(fā)原理的相關(guān)資料,需要的朋友可以參考下
    2022-01-01
  • IDEA搭建Maven模塊化項(xiàng)目的實(shí)現(xiàn)

    IDEA搭建Maven模塊化項(xiàng)目的實(shí)現(xiàn)

    本文主要介紹了IDEA搭建Maven模塊化項(xiàng)目的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05

最新評論

元谋县| 肃宁县| 双辽市| 甘德县| 大庆市| 丰镇市| 贵州省| 綦江县| 视频| 龙州县| 鹿邑县| 武威市| 濉溪县| 邻水| 密山市| 齐齐哈尔市| 昌都县| 吐鲁番市| 龙口市| 无锡市| 竹山县| 来安县| 涪陵区| 尼勒克县| 英超| 凤冈县| 禹城市| 竹北市| 昌乐县| 桂东县| 佛冈县| 建宁县| 获嘉县| 桓台县| 顺昌县| 三江| 邻水| 博乐市| 宁海县| 伊吾县| 襄垣县|