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

SpringBoot?Maven的操作與配置圖文教程

 更新時間:2025年10月31日 11:47:35   作者:朝新_  
Spring?Boot開發(fā)中,將項目打包為可執(zhí)行JAR是部署到生產(chǎn)環(huán)境的關(guān)鍵步驟,這篇文章主要介紹了SpringBoot?Maven操作與配置的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下

Maven

Maven是一個項目管理工具,通過pom.xml文件的配置獲取jar包,而不用手動去添加jar包;

(一)創(chuàng)建一個Maven項目

IDEA本身已經(jīng)集成了Maven,我們可以直接使用,無需安裝
以下截圖的idea版本為:2021.3.2,不同版本的 idea 界面展示會有所不同
File -> New-> Project

我們在運行代碼時,會自動添加一個 target 包,這個包存放的是我們編譯生成的代碼:

clean 操作,就可以把生成的 target 包清除

package是打包的意思,打包就是把所有的class文件,全部放在一起,打成jar包或者war包

  • jar包 和 war包 都是一種壓縮文件
  • jar 包就是把開發(fā)人員已經(jīng)寫好的一些代碼進行打包,打好的 jar 包就可以引入到其他項目中,也可以直接使用這些 jar 包中的類和屬性,另外也可以打成可執(zhí)行 jar 包,這樣的包就可以通過 java -jar 命令來執(zhí)行
  • war包可以理解為是一個web項目,里面是項目的所有東西,通常用于網(wǎng)站.

去Maven商店下載對應(yīng)的驅(qū)動包

打開Maven商店

在依賴中引入本地下載的jar包

(二)Maven Help 插件

當項目比較復(fù)雜時,我們就會有Jar包沖突的問題,這時候就需要去解決依賴沖突;解決沖突之前,要先找到?jīng)_突,我們可以使用Maven Help插件來觀察包和包之間的依賴關(guān)系;

(三)Maven依賴管理

依賴配置

依賴:指當前項目運行所需要的jar包;
比如前面學(xué)習(xí) JDBC 時,我們需要手動下載 mysql-connector-java 的包,并且添加到項目中;如果使用Maven,我們只需要在 pom.xml 中引入 mysql-connector-java 的依賴即可:

  • ① 在pom文件dependencies標簽內(nèi),添加依賴坐標

  • ② 點擊Maven刷新按鈕,引入新加入的依賴jar包

依賴傳遞

早期我們沒有使用 maven 時,向項目中添加依賴的 jar 包,需要把所有的 jar 包都復(fù)制到項目工程下

但現(xiàn)在使用 maven 的話,就可以避免管理所需依賴的關(guān)系。我們只需要在 pom 文件中,定義直接依賴就可以了,由于 maven 的依賴具有傳遞性,所以會自動把所依賴的其他 jar 包也一起導(dǎo)入;比如吃火鍋,現(xiàn)在我們可以點一個海底撈外賣,直接就把所有食材都送過來了,包括什么鍋,配什么菜比如去醫(yī)院看病,借助 “互聯(lián)網(wǎng)”,實現(xiàn)了信息共享,只需要帶上身份證,以往的病歷和檢查結(jié)果就都可以看到了.

如上圖,對于不同版本的 jar 包,默認生效最近距離的版本,如左右分支都有 jar C,默認先生效右分支的;

項目A通過 Maven 引入 JarA 時,會自動引入 JarB 和 Jar C;

JarA 和 項目B 就是 項目A 的直接依賴;JarB,Jar C 是間接依賴;

直接依賴:在當前項目中通過依賴配置建立的依賴關(guān)系

間接依賴:被依賴的資源如果依賴其他資源,當前項目間接依賴其他資源

我們打開依賴分析器,查看依賴之間的樹狀視圖,我們可以發(fā)現(xiàn),在導(dǎo)入 connector-j 包時,也會自動導(dǎo)入 protobuf 這個包,protobuf 是 connector-j 的直接依賴:

依賴排除

如果我們在 MavenDemo 項目中,不再需要某個jar包,就可以進行排除

進行依賴排除之前,可能需要下配置好對應(yīng)的setting中的鏡像節(jié)點

我們可以手動添加標簽,對不需要的依賴進行排除

此時,要排除的依賴中不需要寫版本號,只需要寫 groupId 和 artifactId:

可以先寫 artifactId,idea 會自動生成 groupId:

(四)Maven倉庫

這個代碼,我們稱之為"坐標",坐標是唯一的;

在Maven中,根據(jù)groupId、artifactId、version的配置,來唯一識別一個jar包,缺一不可.

當我們在pom文件中配置完依賴之后,點擊刷新,Maven會根據(jù)坐標的配置,去倉庫里尋找Jar包,并把他下載下來,添加到項目中;這個Jar包下載的地方就稱為倉庫;

倉庫:用于存儲資源,管理各種jar包

Maven倉庫的本質(zhì)就是一個 目錄(文件夾),這個目錄被用來存儲開發(fā)中所有依賴(jar包,插件等)

Maven倉庫分為兩大類: 本地倉庫和遠程倉庫. 其中遠程倉庫又分為中央倉庫, 私服 和其他公共庫

本地倉庫

本地倉庫:自己計算機上的一個目錄(用來存儲jar包)

當項目中引入對應(yīng)依賴jar包后,首先會查找本地倉庫中是否有對應(yīng)的jar包

  • 如果有,則在項目直接引用
  • 如果沒有,則去到中央倉庫中下載對應(yīng)的 jar 包到本地倉庫

中央倉庫

中央倉庫: maven軟件中內(nèi)置一個遠程倉庫地址,就是中央倉庫,服務(wù)于整個互聯(lián)網(wǎng);

由Maven 團隊維護,全球唯一.

倉庫地址

可以通過https://mvnrepository.com 這個網(wǎng)站來查詢并下載;

我們可以把自己寫好的 Jar 包上傳到中央倉庫(具備一定的要求),也可以從中央倉庫下載Jar包;
查找Jar的坐標

  1. 訪問 https://mvnrepository.com/
  2. 進行查找, 比如mysql

粘貼到依賴中,如果代碼顯示紅色,則只需要點擊刷新,會自動下載好 jar 包,并且會在本地倉庫的,目錄中查找到下載好的 jar 包

私有服務(wù)器

當Maven需要下載資源的時候

  1. 先從本地倉庫獲取,本地倉庫存在,則直接返回
  2. 如果本地倉庫沒有,就從私服請求,私服存在該資源,就直接返回
  3. 如果私服上不存在該資源,則從中央倉庫下載,中央倉庫不存在,就報錯了…
  4. 如果中央倉庫中存在,就先緩存在私服上之后,再緩存到本地倉庫里,再為Maven的下載請求,提供服務(wù);
  5. 私服是很多人在使用的,所以只需要第一個使用者下載一次就可以了

(五)配置國內(nèi)源

配置項目setting

總結(jié) 

到此這篇關(guān)于SpringBoot Maven的操作與配置的文章就介紹到這了,更多相關(guān)SpringBoot Maven操作與配置內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Spring Security OAuth 自定義授權(quán)方式實現(xiàn)手機驗證碼

    Spring Security OAuth 自定義授權(quán)方式實現(xiàn)手機驗證碼

    這篇文章主要介紹了Spring Security OAuth 自定義授權(quán)方式實現(xiàn)手機驗證碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • 解決eclipse中console控制選項不見了的方法

    解決eclipse中console控制選項不見了的方法

    eclipse是一款用于編譯java語言的程序,利用這款軟件我們可以制作很多有趣的小程序,也可以制作一些大型的軟件項目,有的用戶在使用eclipse的時候會遇到console消失的情況,所以本文給大家介紹了解決eclipse中console控制選項不見了的方法,需要的朋友可以參考下
    2024-03-03
  • Jmeter如何基于命令行運行jmx腳本

    Jmeter如何基于命令行運行jmx腳本

    這篇文章主要介紹了Jmeter如何基于命令行運行jmx腳本,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-07-07
  • 詳解Java線程-守護線程與用戶線程

    詳解Java線程-守護線程與用戶線程

    這篇文章主要介紹了Java守護線程與用戶線程,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • Java可變參數(shù)列表詳解

    Java可變參數(shù)列表詳解

    這篇文章主要介紹了Java可變參數(shù)列表詳解的相關(guān)資料,需要的朋友可以參考下
    2017-05-05
  • web中拖拽排序和java后臺交互實現(xiàn)方法示例

    web中拖拽排序和java后臺交互實現(xiàn)方法示例

    這篇文章主要給大家介紹了關(guān)于web中拖拽排序和java后臺交互實現(xiàn)的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-12-12
  • 詳解Java程序并發(fā)的Wait-Notify機制

    詳解Java程序并發(fā)的Wait-Notify機制

    這篇文章主要介紹了詳解Java程序并發(fā)的Wait-Notify機制,多線程并發(fā)是Java編程中的重要部分,需要的朋友可以參考下
    2015-07-07
  • Java并發(fā)編程最佳實踐之構(gòu)建高并發(fā)、可伸縮的應(yīng)用實例

    Java并發(fā)編程最佳實踐之構(gòu)建高并發(fā)、可伸縮的應(yīng)用實例

    Java并發(fā)編程是Java語言中最為復(fù)雜且核心的高級特性之一,其本質(zhì)在于如何在多線程環(huán)境下高效、安全、可預(yù)測地協(xié)調(diào)多個執(zhí)行單元對共享資源的訪問與協(xié)作,這篇文章主要介紹了Java并發(fā)編程最佳實踐之構(gòu)建高并發(fā)、可伸縮的應(yīng)用實例,需要的朋友可以參考下
    2026-04-04
  • mybatis Mapper的xml文件中resultType值的使用說明

    mybatis Mapper的xml文件中resultType值的使用說明

    這篇文章主要介紹了mybatis Mapper的xml文件中resultType值的使用說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-10-10
  • Java的動態(tài)代理和靜態(tài)代理及反射常用API詳解

    Java的動態(tài)代理和靜態(tài)代理及反射常用API詳解

    這篇文章主要介紹了Java的動態(tài)代理和靜態(tài)代理及反射常用API詳解,動態(tài)代理是一種在運行時動態(tài)生成代理對象的技術(shù),它是一種設(shè)計模式,用于在不修改原始對象的情況下,通過代理對象來間接訪問原始對象,并在訪問前后執(zhí)行額外的操作,需要的朋友可以參考下
    2024-01-01

最新評論

犍为县| 花垣县| 信阳市| 桂东县| 博湖县| 丽江市| 惠东县| 阳信县| 台安县| 桐梓县| 项城市| 札达县| 莲花县| 甘南县| 工布江达县| 舒城县| 阿克苏市| 金秀| 益阳市| 台中市| 唐山市| 金华市| 许昌县| 金沙县| 平安县| 临猗县| 扎赉特旗| 临邑县| 郴州市| 金川县| 安西县| 家居| 正宁县| 陇川县| 黑水县| 视频| 兴安盟| 大兴区| 清镇市| 镇平县| 章丘市|