国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Maven之POM淺析

IT那活兒 / 1425人閱讀
Maven之POM淺析
點擊上方“IT那活兒”公眾號,關注后了解更多內容,不管IT什么活兒,干就完了!!!

構建工具Maven

java的jar包管理工具在開發中,Maven不僅自動化構建框架,還能抽象構建過程,提供構建任務實現,今天介紹一下在實戰中POM的構建以及常用Build操作。


超級POM

Maven 是一款 【構建管理】和【依賴管理】的工具,maven在構建過程中有很多默認的設定。
源文件存放的目錄、測試源文件存放的目錄、構建輸出的目錄......等等。
定義的位置就是:超級POM簡單來說就是,你可以為工程指定父工程,若不指定父工程,則Maven中會存在默認繼承的父工程,即超級POM。
超級POM中定義了默認訪問的【中央倉庫】、【插件管理】、【打包名稱】等等。

使用help:evaluate 查看屬性值

3.1 自定義屬性
例如自定義了xinju
<properties>
   <project.build.Encoding>UTF-8project.build.Encoding>
   <com.shsnc.maven>xinjucom.shsnc.maven>
properties>
想要獲取xinju的值,就可以使用mvn help:evaluate,輸入${com.shsnc.maven} 進行查看:
3.2 訪問系統環境變量
使用:${env.系統環境變量名}。
例:訪問【JAVA_HOME】的path目錄
3.3 訪問Project 屬性
使用表達式 ${project.xxx.xxx} 可以訪問當前 POM 中的元素值。
例:獲取【artifactId】 的屬性值:
例:獲取子標簽下的【artifactId】的屬性值:
3.4 訪問 settings 全局配置
${settings.標簽名} 可以訪問 settings.xml 中配置的元素值。
作 用:
1)在當前pom.xml 文件中引用屬性
例如版本管理,一處修改,處處生效:

2)資源過濾功能,在非 Maven 配置文件中引用屬性,由 Maven 在處理資源時將引用屬性的表達式替換為屬性值。


Build標簽

本質來說:配置build標簽都是對 超級POM配置的疊加。
這里主要介紹一下【聲明周期插件】,plugins 標簽存放的是默認生命周期中實際會用到的插件,這些插件想必大家都不陌生,所以拋開插件本身不談,我們來看看 plugin 標簽的結構:

executions 標簽內可以配置多個 execution 標簽,execution 標簽內:

  • id:指定唯一標識;
  • phase:關聯的生命周期階段;
  • goals/goal:關聯指定生命周期的目標。
其中,goals 標簽中可以配置多個 goal 標簽,表示一個生命周期環節可以對應當前插件的多個目標。
另外,插件目標的執行過程可以進行配置:

Build標簽使用

5.1 指定 JDK 版本
Maven 默認的版本是jdk5,而Lambda表達式是jdk8版本,使用會報錯:
插件指定 JDK版本:
編輯通過,可以正常運行:
5.2 SpringBoot 定制化打包
spring-boot-maven-plugin 并不是 Maven 自帶的插件,而是SpringBoot提供的,用來改變 Maven 默認的構建行為。具體來說是改變打包的行為。默認情況下Maven 調用 maven-jar-plugin 插件的 jar 目標,生成普通的 jar 包。
普通 jar 包沒法使用 java -jar xxx.jar 這樣的命令來啟動、運行,但是SpringBoot的設計理念就是每一個【微服務】導出為一個 jar 包,這個 jar 包可以使用java -jar xxx.jar這樣的命令直接啟動運行。
所以SpringBoot提供了spring-boot-maven-plugin這個插件來定制打包行為。
所有的一切已經都被 SpringBoot 封裝好了,所以配置非常簡單,提供插件坐標即可:
5.3 Mybatis逆向工程
由于使用存在局限性,并且無法實現【多表查詢】的操作,在實際開發中使用較少,所以不做過多介紹。


本文作者周瑞謀(上海新炬中北團隊)

本文來源:“IT那活兒”公眾號

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/129125.html

相關文章

  • Maven實戰Quick Start

    摘要:在之前,十個項目可能有十種構建方式,但通過,所有項目的構建命令都是簡單一致的。有利于促進項目團隊的標準化。手工勞動往往意味著低效,意味著容易出錯。這在很大程度上消除了重復。默認情況下,該文件夾下放置了本地倉庫。學習實戰許曉斌著 Introduction Maven是一個異常強大的構建工具,能夠幫我們自動化構建過程,從清理、編譯、測試到生成報告,再到打包和部署。通過Maven,我們只需要...

    Yi_Zhi_Yu 評論0 收藏0
  • Maven核心概念和日常實踐

    摘要:項目根目錄項目名項目版本號項目目錄打包的名字二依賴管理概述通過在配置依賴坐標,會自動幫我們下載依賴的構件。關于父模塊的依賴配置注意兩點一般都是通過來配置所有依賴及其版本號,然后子模塊,在自己的文件中聲明依賴即可,不用再指定版本,以確保統一。 一、Maven 1.1 為什么寫Maven 工欲善其事,必先利其器。如今Java相關開發,基本離不開Maven、Gradle、MAT、Hudson...

    894974231 評論0 收藏0
  • RPC框架實踐:Google gRPC

    摘要:與文章框架實踐之一文中實踐的另一種通用框架能通過自動生成對應語言的接口類似,也能自動地生成和的存根,我們只需要一個命令就能快速搭建起運行環境。類似于之前對于框架的實踐步驟,下面一一闡述。 showImg(https://segmentfault.com/img/remote/1460000014946557); 概述 gRPC是Google開源的通用高性能RPC框架,它支持的是使用P...

    malakashi 評論0 收藏0
  • RPC框架實踐:Google gRPC

    摘要:與文章框架實踐之一文中實踐的另一種通用框架能通過自動生成對應語言的接口類似,也能自動地生成和的存根,我們只需要一個命令就能快速搭建起運行環境。類似于之前對于框架的實踐步驟,下面一一闡述。 showImg(https://segmentfault.com/img/remote/1460000014946557); 概述 gRPC是Google開源的通用高性能RPC框架,它支持的是使用P...

    vibiu 評論0 收藏0
  • 一起學習使用Spring Cloud NetflixEureka

    摘要:筆者也是初學者,本文從創建項目工程開始,一步一步開始講解如何創建服務端和客戶端,一起學習,共同進步。下面我們使用工具創建相關項目。配置其中兩個屬性表明這個應用是端,而不是端。至此,端和端已經部署成功。 前言 spring cloud為互聯企業構建微服務提供了一整套的技術組件,其中Eureka是Spring Cloud體系中的核心。Netfix不是一個技術概念,它原本是國外一個視頻網站的...

    李義 評論0 收藏0
  • Maven就是這么簡單

    摘要:軟件項目的管理就會變得簡單很多。比如說的驅動程序,,在是獲取不到的,就需要手工上傳到里是倉庫組,在里沒有這個概念,是特有的。 什么是Maven Maven是一個采用純Java編寫的開源項目管理工具, Maven采用了一種被稱之為Project Object Model (POM)概念來管理項目,所有的項目配置信息都被定義在一個叫做POM.xml的文件中.. Maven是一款跨平臺的項目...

    leonardofed 評論0 收藏0

發表評論

0條評論

IT那活兒

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<