Maven3.9.9環(huán)境安裝配置的實(shí)現(xiàn)步驟
Maven 是什么 ?
Maven是一個(gè)強(qiáng)大的項(xiàng)目管理和構(gòu)建自動(dòng)化工具,主要用于Java項(xiàng)目的構(gòu)建、依賴(lài)管理和項(xiàng)目生命周期管理。其名稱(chēng)源于意第緒語(yǔ),意為“知識(shí)的積累者”。Maven最初是為了解決Jakarta Turbine項(xiàng)目中的構(gòu)建復(fù)雜性而開(kāi)發(fā)的,旨在提供一種標(biāo)準(zhǔn)化的方式來(lái)管理多個(gè)Java項(xiàng)目的構(gòu)建過(guò)程。
Apache軟件基金會(huì)(Apache Software Foundation,簡(jiǎn)稱(chēng)ASF)成立于1999年,是一個(gè)非營(yíng)利組織,致力于支持開(kāi)源軟件項(xiàng)目。它起源于Apache HTTP Server的開(kāi)發(fā)團(tuán)隊(duì),隨著時(shí)間的發(fā)展,Apache基金會(huì)逐漸成為眾多開(kāi)源項(xiàng)目的管理機(jī)構(gòu)。
Apache HTTP Server是ASF最著名的項(xiàng)目之一,它是全球使用最廣泛的Web服務(wù)器軟件。該服務(wù)器最初是為了支持快速增長(zhǎng)的萬(wàn)維網(wǎng)而開(kāi)發(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.方便的依賴(lài)管理
Maven能夠自動(dòng)下載和管理項(xiàng)目所需的依賴(lài)庫(kù),避免了“JAR地獄”的問(wèn)題。
2.統(tǒng)一項(xiàng)目結(jié)構(gòu)
一旦熟悉了Maven的結(jié)構(gòu),開(kāi)發(fā)人員可以輕松地理解和使用任何基于Maven的項(xiàng)目。
3.標(biāo)準(zhǔn)的項(xiàng)目構(gòu)建流程
Maven定義了一系列標(biāo)準(zhǔn)的構(gòu)建生命周期,包括清理、編譯、測(cè)試和打包等。每個(gè)生命周期由多個(gè)階段組成,開(kāi)發(fā)者可以通過(guò)插件在這些階段中執(zhí)行特定任務(wù)。
Maven模型概述
POM
Maven的核心是項(xiàng)目對(duì)象模型(Project Object Model,POM),它是Maven構(gòu)建和管理項(xiàng)目的基礎(chǔ)。POM以XML格式存在,包含了項(xiàng)目的基本信息、構(gòu)建配置、依賴(lài)管理等內(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)目名稱(chē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支持通過(guò)父POM來(lái)實(shí)現(xiàn)配置的繼承。所有Maven項(xiàng)目都可以從一個(gè)默認(rèn)的父POM(Super POM)繼承配置,這樣可以減少重復(fù)配置,提高可維護(hù)性。用戶(hù)可以在自己的POM中定義父POM,以便復(fù)用其配置。
倉(cāng)庫(kù)介紹
1. 本地倉(cāng)庫(kù)
Maven在本地機(jī)器上維護(hù)一個(gè)本地倉(cāng)庫(kù),默認(rèn)位置為用戶(hù)主目錄下的.m2/repository
。當(dāng)您第一次運(yùn)行Maven命令時(shí),這個(gè)目錄會(huì)被創(chuàng)建。
- 構(gòu)建開(kāi)始:當(dāng)您執(zhí)行Maven構(gòu)建命令(如
mvn clean install
)時(shí),Maven首先檢查本地倉(cāng)庫(kù)中是否存在所需的依賴(lài)項(xiàng)。 - 依賴(lài)項(xiàng)查找:
- 如果依賴(lài)項(xiàng)存在于本地倉(cāng)庫(kù),Maven直接使用這些依賴(lài)。
- 如果依賴(lài)項(xiàng)不存在,Maven會(huì)繼續(xù)查找中央倉(cāng)庫(kù)。
2. 中央倉(cāng)庫(kù)
如果在本地倉(cāng)庫(kù)中未找到所需的依賴(lài)項(xiàng),Maven會(huì)訪問(wèn)中央倉(cāng)庫(kù)。中央倉(cāng)庫(kù)是一個(gè)公共存儲(chǔ)庫(kù),包含了大量常用的Java庫(kù)和插件。
- 查找依賴(lài)項(xiàng):Maven會(huì)訪問(wèn)中央倉(cāng)庫(kù)(默認(rèn)URL為
https://repo1.maven.org/maven2/
),并嘗試下載缺失的依賴(lài)項(xiàng)。 - 下載與存儲(chǔ):一旦找到所需的依賴(lài)項(xiàng),Maven將其下載并存儲(chǔ)到本地倉(cāng)庫(kù),以便下次使用。
3. 遠(yuǎn)程倉(cāng)庫(kù)
在某些情況下,即使在中央倉(cāng)庫(kù)中也找不到所需的依賴(lài)項(xiàng)。這時(shí),您可以配置遠(yuǎn)程倉(cāng)庫(kù),這是開(kāi)發(fā)者自定義的存儲(chǔ)庫(kù),用于存放特定項(xiàng)目或公司內(nèi)部使用的依賴(lài)項(xiàng)。
- 查找遠(yuǎn)程倉(cāng)庫(kù):如果在中央倉(cāng)庫(kù)中未找到所需依賴(lài)項(xiàng),Maven會(huì)檢查配置在
pom.xml
中的遠(yuǎn)程倉(cāng)庫(kù)。 - 下載與存儲(chǔ):如果在遠(yuǎn)程倉(cāng)庫(kù)中找到所需的依賴(lài)項(xiàng),Maven將其下載并存儲(chǔ)到本地倉(cāng)庫(kù)。如果仍然找不到,則構(gòu)建過(guò)程將停止,并輸出錯(cuò)誤信息。
安裝配置Maven
1.下載Maven
要安裝Maven,您可以訪問(wèn)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í)行,選擇沒(méi)有中文字符,沒(méi)有空格的路徑。
接著自己選擇合適的路徑進(jìn)行安裝即可,我就不演示了。
2.配置本地倉(cāng)庫(kù)
Maven使用本地倉(cāng)庫(kù)來(lái)存儲(chǔ)下載的依賴(lài)項(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" 以我的路徑為例。
接著打開(kāi)這個(gè)xml文件, 找到第53行,把這行復(fù)制一下拿出來(lái)
為了方便管理,我們就在剛才Maven解壓下的目錄新建一個(gè)文件夾作為倉(cāng)庫(kù) mav-repo
最后將倉(cāng)庫(kù)的路徑復(fù)制過(guò)來(lái),放入<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)境變量類(lèi)似。
最后測(cè)試一下是否安裝成功,打開(kāi)cmd,輸入 mvn -v ,說(shuō)明我們已經(jīng)配置成功了
Maven 環(huán)境配置至此結(jié)束!
總結(jié)
通過(guò)以上步驟,您可以順利下載并安裝Maven。選擇合適的壓縮包、正確配置環(huán)境變量是確保Maven正常工作的關(guān)鍵。完成這些步驟后,您就可以開(kāi)始使用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)境的問(wèn)題
- Maven環(huán)境安裝配置和新建項(xiàng)目介紹
- Windows安裝Maven并配置環(huán)境的詳細(xì)步驟
- Windows安裝Maven并配置環(huán)境變量
- Maven的安裝和環(huán)境變量配置過(guò)程
相關(guān)文章
詳解SpringBoot 快速整合Mybatis(去XML化+注解進(jìn)階)
本篇文章主要介紹了詳解SpringBoot 快速整合Mybatis(去XML化+注解進(jìn)階),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-11-11java.sql.SQLTimeoutException異常的正確解決方法(親測(cè)有效!)
在我們編寫(xiě)程序的時(shí)候,有時(shí)候要進(jìn)行復(fù)雜的查詢(xún)時(shí),就會(huì)出現(xiàn)執(zhí)行sql時(shí)間過(guò)長(zhǎng),引起頁(yè)面執(zhí)行不了并提示執(zhí)行腳本超時(shí),這就是我們遇到超時(shí)異常,這篇文章主要給大家介紹了關(guān)于java.sql.SQLTimeoutException異常的正確解決方法,需要的朋友可以參考下2024-02-02如何將Spring Session存儲(chǔ)到Redis中實(shí)現(xiàn)持久化
這篇文章主要介紹了如何將Spring Session存儲(chǔ)到Redis中實(shí)現(xiàn)持久化,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-07-07Mybatis查詢(xún)時(shí)數(shù)據(jù)丟失的問(wèn)題及解決
Mybatis查詢(xún)時(shí)數(shù)據(jù)丟失的問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-01-01Springboot整合Dubbo教程之項(xiàng)目創(chuàng)建和環(huán)境搭建
本篇文章主要介紹了Springboot整合Dubbo教程之項(xiàng)目創(chuàng)建和環(huán)境搭建,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-12-12Spring?Boot如何通過(guò)Actuator顯示git和build的信息
這篇文章主要介紹了Spring?Boot通過(guò)Actuator顯示git和build的信息,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-01-01如何解決SpringBoot2.6及之后版本取消了循環(huán)依賴(lài)的支持問(wèn)題
循環(huán)依賴(lài)指的是兩個(gè)或者多個(gè)bean之間相互依賴(lài),形成一個(gè)閉環(huán),SpringBoot從2.6.0開(kāi)始默認(rèn)不允許出現(xiàn)Bean循環(huán)引用,解決方案包括在全局配置文件設(shè)置允許循環(huán)引用存在、在SpringApplicationBuilder添加設(shè)置允許循環(huán)引用、構(gòu)造器注入2024-10-10SpringMVC實(shí)現(xiàn)controller中獲取session的實(shí)例代碼
本篇文章主要介紹了SpringMVC實(shí)現(xiàn)controller中獲取session的實(shí)例代碼,具有一定的參考價(jià)值,有興趣的可以了解一下。2017-02-02