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

SpringBoot配置與使用maven的方法

 更新時(shí)間:2026年01月19日 09:57:34   作者:那我掉的頭發(fā)算什么  
本文介紹了如何在IntelliJ IDEA中創(chuàng)建和配置Maven項(xiàng)目,包括創(chuàng)建過程、目錄結(jié)構(gòu)、pom.xml文件的用途、依賴管理、生命周期、配置選項(xiàng)以及如何下載依賴和配置本地倉(cāng)庫(kù),感興趣的朋友跟隨小編一起看看吧

引言

當(dāng)我們?cè)趧?chuàng)建一個(gè)新的idea項(xiàng)目時(shí),不知道大家注意過沒有

在這個(gè)頁(yè)面中除了IntelliJ選項(xiàng)之外,還有一個(gè)Maven選項(xiàng)。而這個(gè)Maven恰好就是我們今天這篇文章的重頭戲!

創(chuàng)建Maven項(xiàng)目

單單創(chuàng)建一個(gè)Maven項(xiàng)目其實(shí)很簡(jiǎn)單,只需要在原有的基礎(chǔ)上把本來創(chuàng)建的idea項(xiàng)目改成Maven就好了。此處的GroupId和ArtifactId在工作中參與大項(xiàng)目時(shí)會(huì)使用到,表示組名和項(xiàng)目的一些信息。

創(chuàng)建完成后的項(xiàng)目中的目錄與我們之前idea的目錄差異很大,有了很多沒見過的模塊,比如:

  • target:Maven構(gòu)建項(xiàng)目后生成的輸出目錄,所有的編譯、打包的結(jié)果都會(huì)在這里
  • pom.xml:Maven 項(xiàng)目的核心配置文件,定義了項(xiàng)目的依賴、構(gòu)建方式、插件、版本等關(guān)鍵信息。
  • External Libraries 外部依賴:這里顯示的是項(xiàng)目通過 Maven 引入的所有外部依賴庫(kù)。

target目錄下的內(nèi)容其實(shí)可以全部刪除,因?yàn)槊恳淮嗡⑿翸aven這些東西就會(huì)通過Maven指令重新解析并且重新生成一遍,我們只需要其中有用的包就行。
當(dāng)我們想要檢查某一個(gè)依賴是否真的被加入到項(xiàng)目中,我們可以檢查外部依賴,如果外部依賴?yán)锎_實(shí)有,那就說明這個(gè)依賴被添加進(jìn)去了。

pom.xml是Maven中一個(gè)非常重要的文件!

pom文件

這是一個(gè)簡(jiǎn)單的數(shù)據(jù)庫(kù)依賴:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>org.example</groupId>
    <artifactId>maven-demo</artifactId>
    <version>1.0-SNAPSHOT</version>
    <properties>
        <maven.compiler.source>17</maven.compiler.source>
        <maven.compiler.target>17</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>
    <dependencies>
        <dependency>
            <groupId>com.mysql</groupId>
            <artifactId>mysql-connector-j</artifactId>
            <version>9.3.0</version>
            <exclusions>
                <exclusion>
                    <artifactId>protobuf-java</artifactId>
                    <groupId>com.google.protobuf</groupId>
                </exclusion>
            </exclusions>
        </dependency>
    </dependencies>
</project>

項(xiàng)目基本信息

前面這一部分都是對(duì)于項(xiàng)目的一些簡(jiǎn)介,里面包含了項(xiàng)目的一些基本信息。

GAV

<groupId>org.example</groupId>
<artifactId>maven-demo</artifactId>
<version>1.0-SNAPSHOT</version>

這三個(gè)標(biāo)簽合稱為Maven 的 GAV 坐標(biāo),是全球唯一標(biāo)識(shí)一個(gè)項(xiàng)目 / 依賴的 “身份證”,無論在本地倉(cāng)庫(kù)還是中央倉(cāng)庫(kù),Maven 都靠這三個(gè)值定位資源。

G:組織(團(tuán)隊(duì)名or公司名)
A:項(xiàng)目(項(xiàng)目名稱)
V:版本

properties

<properties>
    <maven.compiler.source>17</maven.compiler.source>
    <maven.compiler.target>17</maven.compiler.target>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>

properties是全局屬性配置區(qū),可以在這里定義 “公共變量”,作用是統(tǒng)一管理項(xiàng)目的基礎(chǔ)配置,避免分散配置導(dǎo)致的不一致。
比如此處就定義了jdk的版本以及編碼格式。

依賴管理核心:dependencies與dependency

<dependencies>
        <dependency>
            <groupId>com.mysql</groupId>
            <artifactId>mysql-connector-j</artifactId>
            <version>9.3.0</version>
            <exclusions>
                <exclusion>
                    <artifactId>protobuf-java</artifactId>
                    <groupId>com.google.protobuf</groupId>
                </exclusion>
            </exclusions>
        </dependency>
    </dependencies>

這里我們也是通過其中的GAV坐標(biāo)來定位依賴,比如此處使用的就是Mysql官方的JDBC驅(qū)動(dòng)來進(jìn)行數(shù)據(jù)的鏈接的一個(gè)依賴。Maven會(huì)自動(dòng)的到官方地址去下載這個(gè)依賴到本地倉(cāng)庫(kù)。

Maven 有 “傳遞依賴” 機(jī)制:當(dāng)你引入 A 依賴時(shí),A 依賴本身依賴的 B、C 庫(kù)也會(huì)被自動(dòng)引入。
但有時(shí)候,傳遞依賴會(huì)帶來問題(比如版本沖突、冗余依賴),這時(shí)候就需要exclusions排除不需要的傳遞依賴:
這里排除了com.google.protobuf:protobuf-java:說明mysql-connector-j:9.3.0本身依賴了protobuf-java,但你的項(xiàng)目不需要這個(gè)庫(kù)(或者它和其他依賴版本沖突),所以通過exclusion強(qiáng)制排除。

Maven的配置與使用

生命周期

我們點(diǎn)擊右邊的圖標(biāo)就可以打開Maven操作界面了。
這一部分表示整個(gè)Maven的一個(gè)生命周期。不過我們平時(shí)只需要用到前五個(gè)就可以。

我們可以直接雙擊package代表執(zhí)行除了clean前五個(gè)命令,最終會(huì)將項(xiàng)目打包成一個(gè).jar包。

下載依賴到本地倉(cāng)庫(kù)

如圖所示,我們剛開始嘗試添加一個(gè)依賴的時(shí)候,肯定會(huì)出現(xiàn)上面這樣的報(bào)紅的情況。這是因?yàn)镸aven檢查了本地倉(cāng)庫(kù)之后發(fā)現(xiàn)不存在9.2.0這個(gè)版本的數(shù)據(jù)庫(kù)依賴。此時(shí)我們可以點(diǎn)擊刷新Maven ,讓Maven下載依賴:

新建Maven倉(cāng)庫(kù)

我們的Maven在本地C盤中有一個(gè)默認(rèn)倉(cāng)庫(kù),一般是在C:\Maven.m2中。建議大家改到別的目錄下,因?yàn)槲覀兊囊蕾嚩紩?huì)被下載到這里,久而久之會(huì)占用很大的存儲(chǔ)空間。注意新建的Maven倉(cāng)庫(kù)要包含原倉(cāng)庫(kù)中的所有文件。

然后我們把這里的兩個(gè)路徑改成和我圖中一樣的路徑即可。
此處的setting.xml中保存了Maven的一些基本設(shè)置等。正常來說Maven會(huì)到總倉(cāng)庫(kù)中下載依賴,但是這個(gè)服務(wù)器在國(guó)外,所以速度可能會(huì)有點(diǎn)慢,可以通過在settings.xml中配置國(guó)內(nèi)鏡像源把下載路徑改到國(guó)內(nèi)的云服務(wù),下載速度會(huì)變快。
有需要的話可以私信我,我把我的setting.xml文件私發(fā)給你。

當(dāng)然,Maven的用法不止這些,感興趣的話,大家可以自行探索哦

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

相關(guān)文章

  • Java數(shù)據(jù)結(jié)構(gòu)之KMP算法的實(shí)現(xiàn)

    Java數(shù)據(jù)結(jié)構(gòu)之KMP算法的實(shí)現(xiàn)

    這篇文章主要為大家詳細(xì)介紹了Java數(shù)據(jù)結(jié)構(gòu)中KMP算法的原理與實(shí)現(xiàn),文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Java有一定的幫助,需要的可以參考一下
    2022-11-11
  • Java?輕松入門使用Fiddler抓包工具教程

    Java?輕松入門使用Fiddler抓包工具教程

    超文本傳輸協(xié)議(HTTP)是一個(gè)簡(jiǎn)單的請(qǐng)求-響應(yīng)協(xié)議,其主要是基于TCP來實(shí)現(xiàn)的,可以通過Chrome開發(fā)者工具或者Wireshark或者Fiddler抓包,以便分析?HTTP?請(qǐng)求/響應(yīng)的細(xì)節(jié),本篇博客主要談?wù)撊绾问褂肍iddler抓取HTTP,當(dāng)然也可以抓取HTTPS
    2022-02-02
  • 一篇文章徹底理解SpringIOC、DI

    一篇文章徹底理解SpringIOC、DI

    這篇文章主要給大家介紹了關(guān)于對(duì)SpringIOC、DI的理解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • java反射使用示例分享

    java反射使用示例分享

    這篇文章主要介紹了java反射使用示例,代碼很簡(jiǎn)單,需要的朋友可以參考下
    2014-02-02
  • Java基于TCP協(xié)議socket網(wǎng)絡(luò)編程的文件傳送的實(shí)現(xiàn)

    Java基于TCP協(xié)議socket網(wǎng)絡(luò)編程的文件傳送的實(shí)現(xiàn)

    這篇文章主要介紹了Java基于TCP協(xié)議socket網(wǎng)絡(luò)編程的文件傳送的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • MybatisPlus自定義Sql實(shí)現(xiàn)多表查詢的示例

    MybatisPlus自定義Sql實(shí)現(xiàn)多表查詢的示例

    這篇文章主要介紹了MybatisPlus自定義Sql實(shí)現(xiàn)多表查詢的示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • java數(shù)組基礎(chǔ)詳解

    java數(shù)組基礎(chǔ)詳解

    這篇文章主要介紹了Java數(shù)組基礎(chǔ)詳解,具有一定參考價(jià)值,需要的朋友可以了解下。
    2017-11-11
  • java代碼實(shí)現(xiàn)空間切割

    java代碼實(shí)現(xiàn)空間切割

    大家好,本篇文章主要講的是java代碼實(shí)現(xiàn)空間切割,感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下
    2022-01-01
  • Mybatis-Plus BaseMapper的用法詳解

    Mybatis-Plus BaseMapper的用法詳解

    這篇文章主要介紹了Mybatis-Plus BaseMapper的用法詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • 多模塊項(xiàng)目使用枚舉配置spring-cache緩存方案詳解

    多模塊項(xiàng)目使用枚舉配置spring-cache緩存方案詳解

    這篇文章主要為大家介紹了多模塊項(xiàng)目使用枚舉配置spring-cache緩存的方案詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-05-05

最新評(píng)論

宝山区| 平果县| 龙口市| 和政县| 绥江县| 濉溪县| 富蕴县| 东安县| 永和县| 博罗县| 长治县| 永兴县| 轮台县| 榆中县| 五河县| 新宁县| 镇雄县| 唐山市| 永嘉县| 登封市| 万州区| 同德县| 彩票| 通河县| 海阳市| 巫山县| 榆中县| 卓尼县| 乐东| 库车县| 布尔津县| 韶山市| 安阳县| 炎陵县| 巩义市| 朝阳县| 家居| 庄浪县| 宜君县| 香格里拉县| 云南省|