Maven3.9.9環(huán)境安裝配置的實(shí)現(xiàn)步驟
Maven 是什么 ?
Maven是一個(gè)強(qiáng)大的項(xiàng)目管理和構(gòu)建自動(dòng)化工具,主要用于Java項(xiàng)目的構(gòu)建、依賴管理和項(xiàng)目生命周期管理。其名稱源于意第緒語,意為“知識(shí)的積累者”。Maven最初是為了解決Jakarta Turbine項(xiàng)目中的構(gòu)建復(fù)雜性而開發(fā)的,旨在提供一種標(biāo)準(zhǔn)化的方式來管理多個(gè)Java項(xiàng)目的構(gòu)建過程。

Apache軟件基金會(huì)(Apache Software Foundation,簡(jiǎn)稱ASF)成立于1999年,是一個(gè)非營(yíng)利組織,致力于支持開源軟件項(xiàng)目。它起源于Apache HTTP Server的開發(fā)團(tuán)隊(duì),隨著時(shí)間的發(fā)展,Apache基金會(huì)逐漸成為眾多開源項(xiàng)目的管理機(jī)構(gòu)。
Apache HTTP Server是ASF最著名的項(xiàng)目之一,它是全球使用最廣泛的Web服務(wù)器軟件。該服務(wù)器最初是為了支持快速增長(zhǎng)的萬維網(wǎng)而開發(fā),采用了基于NCSA HTTPd服務(wù)器的補(bǔ)丁和擴(kuò)展。隨著互聯(lián)網(wǎng)的發(fā)展,Apache HTTP Server不斷演進(jìn),成為一個(gè)功能豐富且可靠的Web服務(wù)器解決方案。
Welcome! - The Apache HTTP Server Project 這是 Apache的官網(wǎng),感興趣的可以去看看。
為什么要使用Maven?
1.方便的依賴管理
Maven能夠自動(dòng)下載和管理項(xiàng)目所需的依賴庫(kù),避免了“JAR地獄”的問題。

2.統(tǒng)一項(xiàng)目結(jié)構(gòu)
一旦熟悉了Maven的結(jié)構(gòu),開發(fā)人員可以輕松地理解和使用任何基于Maven的項(xiàng)目。

3.標(biāo)準(zhǔn)的項(xiàng)目構(gòu)建流程
Maven定義了一系列標(biāo)準(zhǔn)的構(gòu)建生命周期,包括清理、編譯、測(cè)試和打包等。每個(gè)生命周期由多個(gè)階段組成,開發(fā)者可以通過插件在這些階段中執(zhí)行特定任務(wù)。

Maven模型概述
POM
Maven的核心是項(xiàng)目對(duì)象模型(Project Object Model,POM),它是Maven構(gòu)建和管理項(xiàng)目的基礎(chǔ)。POM以XML格式存在,包含了項(xiàng)目的基本信息、構(gòu)建配置、依賴管理等內(nèi)容。
POM的基本結(jié)構(gòu)一個(gè)標(biāo)準(zhǔn)的POM文件通常包括以下幾個(gè)關(guān)鍵元素:
- project:根元素,標(biāo)識(shí)這是一個(gè)Maven項(xiàng)目。
- modelVersion:指定POM模型的版本,通常為4.0.0。
- groupId:定義項(xiàng)目所屬的組織或公司標(biāo)識(shí)。
- artifactId:項(xiàng)目的唯一標(biāo)識(shí),通常是項(xiàng)目名稱。
- version:項(xiàng)目的版本號(hào),用于區(qū)分不同版本的構(gòu)建。

例如,一個(gè)簡(jiǎn)單的POM文件如下所示:
<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>com.example</groupId>
<artifactId>my-app</artifactId>
<version>1.0-SNAPSHOT</version>
</project>父POM與繼承
Maven支持通過父POM來實(shí)現(xiàn)配置的繼承。所有Maven項(xiàng)目都可以從一個(gè)默認(rèn)的父POM(Super POM)繼承配置,這樣可以減少重復(fù)配置,提高可維護(hù)性。用戶可以在自己的POM中定義父POM,以便復(fù)用其配置。
倉(cāng)庫(kù)介紹
1. 本地倉(cāng)庫(kù)
Maven在本地機(jī)器上維護(hù)一個(gè)本地倉(cāng)庫(kù),默認(rèn)位置為用戶主目錄下的.m2/repository。當(dāng)您第一次運(yùn)行Maven命令時(shí),這個(gè)目錄會(huì)被創(chuàng)建。
- 構(gòu)建開始:當(dāng)您執(zhí)行Maven構(gòu)建命令(如
mvn clean install)時(shí),Maven首先檢查本地倉(cāng)庫(kù)中是否存在所需的依賴項(xiàng)。 - 依賴項(xiàng)查找:
- 如果依賴項(xiàng)存在于本地倉(cāng)庫(kù),Maven直接使用這些依賴。
- 如果依賴項(xiàng)不存在,Maven會(huì)繼續(xù)查找中央倉(cāng)庫(kù)。
2. 中央倉(cāng)庫(kù)
如果在本地倉(cāng)庫(kù)中未找到所需的依賴項(xiàng),Maven會(huì)訪問中央倉(cāng)庫(kù)。中央倉(cāng)庫(kù)是一個(gè)公共存儲(chǔ)庫(kù),包含了大量常用的Java庫(kù)和插件。
- 查找依賴項(xiàng):Maven會(huì)訪問中央倉(cāng)庫(kù)(默認(rèn)URL為
https://repo1.maven.org/maven2/),并嘗試下載缺失的依賴項(xiàng)。 - 下載與存儲(chǔ):一旦找到所需的依賴項(xiàng),Maven將其下載并存儲(chǔ)到本地倉(cāng)庫(kù),以便下次使用。
3. 遠(yuǎn)程倉(cāng)庫(kù)
在某些情況下,即使在中央倉(cāng)庫(kù)中也找不到所需的依賴項(xiàng)。這時(shí),您可以配置遠(yuǎn)程倉(cāng)庫(kù),這是開發(fā)者自定義的存儲(chǔ)庫(kù),用于存放特定項(xiàng)目或公司內(nèi)部使用的依賴項(xiàng)。
- 查找遠(yuǎn)程倉(cāng)庫(kù):如果在中央倉(cāng)庫(kù)中未找到所需依賴項(xiàng),Maven會(huì)檢查配置在
pom.xml中的遠(yuǎn)程倉(cāng)庫(kù)。 - 下載與存儲(chǔ):如果在遠(yuǎn)程倉(cāng)庫(kù)中找到所需的依賴項(xiàng),Maven將其下載并存儲(chǔ)到本地倉(cāng)庫(kù)。如果仍然找不到,則構(gòu)建過程將停止,并輸出錯(cuò)誤信息。
安裝配置Maven

1.下載Maven
要安裝Maven,您可以訪問Apache Maven的官方網(wǎng)站,下載最新版本的壓縮包。下載步驟如下:
- 前往Maven官網(wǎng)下載壓縮包。
- 選擇適合您操作系統(tǒng)的壓縮包(如ZIP或TAR.GZ),并下載。
- 解壓縮下載的文件到您選擇的目錄中。
進(jìn)入官網(wǎng),我們這里選擇最新的3.9.9版本下載,注意 Maven 3.9+ 需要 JDK 8 或更高版本才能執(zhí)行,選擇沒有中文字符,沒有空格的路徑。

接著自己選擇合適的路徑進(jìn)行安裝即可,我就不演示了。
2.配置本地倉(cāng)庫(kù)
Maven使用本地倉(cāng)庫(kù)來存儲(chǔ)下載的依賴項(xiàng)。找到 settings.xml這個(gè)文件,進(jìn)行本地倉(cāng)庫(kù)配置。
"F:\apache-maven-3.9.9-bin\apache-maven-3.9.9\conf\settings.xml" 以我的路徑為例。

接著打開這個(gè)xml文件, 找到第53行,把這行復(fù)制一下拿出來

為了方便管理,我們就在剛才Maven解壓下的目錄新建一個(gè)文件夾作為倉(cāng)庫(kù) mav-repo

最后將倉(cāng)庫(kù)的路徑復(fù)制過來,放入<localRepository>標(biāo)簽內(nèi)

3.配置私服倉(cāng)庫(kù)
還是在conf\settings.xml 找到<mirrors>標(biāo)簽,輸入下面這段阿里云的私服地址。
<mirrors>
<mirror>
<id>aliyunmaven</id>
<mirrorOf>*</mirrorOf>
<name>阿里云公共倉(cāng)庫(kù)</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
</mirrors>配置好后進(jìn)行保存即可。

4.配置環(huán)境變量
復(fù)制Maven的安裝路徑,編輯系統(tǒng)環(huán)境變量,新建MAVEN_HOME ,將 復(fù)制的路徑放進(jìn)去,然后點(diǎn)擊確定。

接著找到PATH環(huán)境變量,將MAVEN_HOME 添加進(jìn)去 %MAVEN_HOME%\bin ,然后一路點(diǎn)擊確定即可,根當(dāng)初配置Java的環(huán)境變量類似。

最后測(cè)試一下是否安裝成功,打開cmd,輸入 mvn -v ,說明我們已經(jīng)配置成功了

Maven 環(huán)境配置至此結(jié)束!
總結(jié)
通過以上步驟,您可以順利下載并安裝Maven。選擇合適的壓縮包、正確配置環(huán)境變量是確保Maven正常工作的關(guān)鍵。完成這些步驟后,您就可以開始使用Maven管理Java項(xiàng)目了。
到此這篇關(guān)于Maven3.9.9環(huán)境安裝配置的實(shí)現(xiàn)步驟的文章就介紹到這了,更多相關(guān)Maven 環(huán)境安裝配置內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Maven2環(huán)境安裝與準(zhǔn)備工作詳解
- maven安裝與環(huán)境配置圖文教程
- WIN10環(huán)境 Maven的安裝與配置詳細(xì)教程
- 淺談Maven安裝及環(huán)境配置出錯(cuò)的解決辦法
- Java(JDK/Tomcat/Maven)運(yùn)行環(huán)境配置及工具(idea/eclipse)安裝詳細(xì)教程
- Maven學(xué)習(xí)----Maven安裝與環(huán)境變量配置教程
- 關(guān)于maven環(huán)境的安裝及maven集成idea環(huán)境的問題
- Maven環(huán)境安裝配置和新建項(xiàng)目介紹
- Windows安裝Maven并配置環(huán)境的詳細(xì)步驟
- Windows安裝Maven并配置環(huán)境變量
- Maven的安裝和環(huán)境變量配置過程
相關(guān)文章
在Spring Boot中加載初始化數(shù)據(jù)的實(shí)現(xiàn)
這篇文章主要介紹了在Spring Boot中加載初始化數(shù)據(jù)的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-02-02
springboot將mybatis升級(jí)為mybatis-plus的實(shí)現(xiàn)
之前項(xiàng)目工程用的是mybatis,現(xiàn)在需要將其替換為mybatis-plus,本文主要介紹了springboot將mybatis升級(jí)為mybatis-plus的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下2023-09-09
Java序列化與serialVersionUID生成方法詳解
在Java開發(fā)中,對(duì)象的序列化與反序列化是一個(gè)關(guān)鍵特性,廣泛應(yīng)用于數(shù)據(jù)存儲(chǔ)、網(wǎng)絡(luò)傳輸?shù)葓?chǎng)景,而serialVersionUID作為序列化機(jī)制中的一個(gè)重要標(biāo)識(shí),用于確保類版本的一致性,本文將詳細(xì)講解如何生成serialVersionUID,并結(jié)合具體代碼實(shí)例,幫助讀者更好地理解和應(yīng)用這一概念2025-06-06
新版IDEA使用Spring Initializr創(chuàng)建工程的兩種方法
這篇文章主要介紹了新版IDEA使用Spring Initializr創(chuàng)建工程(兩種方法,官方工具和IDEA),文中通過代碼示例和圖文結(jié)合的方式給大家講解的非常詳細(xì),具有一定的參考價(jià)值,需要的朋友可以參考下2024-10-10
mybatis主表與明細(xì)表一對(duì)多的同時(shí)插入操作方法
對(duì)主表(采購(gòu)申請(qǐng)表)和明細(xì)表(申請(qǐng)物資表)同時(shí)進(jìn)行插入操作insert,怎么實(shí)現(xiàn)呢,下面給大家分享mybatis主表與明細(xì)表一對(duì)多的同時(shí)插入操作方法,感興趣的朋友一起看看吧2023-02-02
java中Integer包裝類裝箱的一個(gè)細(xì)節(jié)詳解
Java中的Integer是int的包裝類型,下面這篇文章主要給大家介紹了關(guān)于java中Integer包裝類裝箱的一個(gè)細(xì)節(jié)的相關(guān)資料,文中介紹的這個(gè)細(xì)節(jié)挺重要的,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起看看吧2018-07-07

