最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

后端 | Maven | 依賴管理

2023-06-25 23:40 作者:朵寶特工007  | 我要投稿

筆記來(lái)源:黑馬程序員2023新版JavaWeb開(kāi)發(fā)教程,實(shí)現(xiàn)javaweb企業(yè)開(kāi)發(fā)全流程

一、Maven概述

1、Maven是什么

  • Maven是apache旗下的一個(gè)開(kāi)源項(xiàng)目,是一款用于管理和構(gòu)建java項(xiàng)目的工具,它基于項(xiàng)目對(duì)象模型(POM)的概念,通過(guò)一小段描述信息來(lái)管理項(xiàng)目的構(gòu)建。

2、Maven的作用

  • 依賴管理:方便快捷的管理項(xiàng)目依賴的資源(jar包),避免版本沖突信息。

  • 統(tǒng)一項(xiàng)目結(jié)構(gòu):提供標(biāo)準(zhǔn)、統(tǒng)一的項(xiàng)目結(jié)構(gòu)。

  • 項(xiàng)目構(gòu)建:標(biāo)準(zhǔn)跨平臺(tái)(Linux、Windows、MacOS)的自動(dòng)化項(xiàng)目構(gòu)建方式。

    • 清理、編譯、測(cè)試、打包、發(fā)布。

3、Maven倉(cāng)庫(kù)

用于存儲(chǔ)資源,管理各種jar包。

  • 本地倉(cāng)庫(kù):自己計(jì)算機(jī)上的一個(gè)目錄。

  • 中央倉(cāng)庫(kù):由Maven團(tuán)隊(duì)維護(hù)的全球唯一的。倉(cāng)庫(kù)地址:https://repo1.maven.org/maven2。

  • 遠(yuǎn)程倉(cāng)庫(kù)(私服):一般由公司團(tuán)隊(duì)搭建的私有倉(cāng)庫(kù)。

4、Maven的安裝

  • Maven依賴JDK,先準(zhǔn)備JDK環(huán)境,然后在Maven官網(wǎng)下載Maven安裝包,并解壓到本地。

  • 配置本地倉(cāng)庫(kù):修改conf/settings.xml中的<localRepository>為一個(gè)指定目錄。

  • 配置阿里云私服(加速jar包下載):修改conf/settings.xml中的<mirrors>標(biāo)簽,為其添加如下子標(biāo)簽。

  • 配置環(huán)境變量(使得在任意目錄都能運(yùn)行Maven):MAVEN_HOME為maven解壓的目錄,并將其bin目錄加入PATH環(huán)境變量。

  • 測(cè)試

5、Maven坐標(biāo)

什么是坐標(biāo):

  • Maven中的坐標(biāo)是資源的唯一標(biāo)識(shí),通過(guò)該坐標(biāo)可以唯一定位資源位置。

  • 使用坐標(biāo)來(lái)定義項(xiàng)目或引入項(xiàng)目中需要的依賴。

Maven坐標(biāo)的主要組成:

  • groupId:定義當(dāng)前Maven項(xiàng)目隸屬組織名稱,通常是域名反寫(xiě)。

  • artifactId:定義當(dāng)前Maven項(xiàng)目名稱,通常是模塊名稱。

  • version:定義當(dāng)前項(xiàng)目版本號(hào)。


二、依賴管理

1、依賴配置

  • 依賴:指當(dāng)前項(xiàng)目運(yùn)行時(shí)所需要的jar包,一個(gè)項(xiàng)目中可以引入多個(gè)依賴。

  • 配置:

    • 在pom.xml中編寫(xiě)<dependencies>標(biāo)簽。

    • 在<dependencies>標(biāo)簽中使用<dependency>引入坐標(biāo)。

    • 定義坐標(biāo)的groupId、artifactId、version。

    • 點(diǎn)擊刷新按鈕,引入最新加入的坐標(biāo)。

2、依賴傳遞

  • 依賴具有傳遞性。

    • 直接依賴:在當(dāng)前項(xiàng)目中通過(guò)依賴配置建立的依賴關(guān)系。

    • 間接依賴:被依賴的資源如果依賴其他資源,當(dāng)前項(xiàng)目間接依賴其他資源。

  • 排除依賴:指主動(dòng)斷開(kāi)依賴的資源,被排除的資源無(wú)需指定版本。

3、依賴范圍

依賴的jar包,默認(rèn)情況下,可以在任何地方使用??梢酝ㄟ^(guò)<scope>...</scope>設(shè)置其作用范圍。

作用范圍:

  • 主程序范圍有效(man文件夾范圍內(nèi))。

  • 測(cè)試程序范圍有效(test文件夾范圍內(nèi))。

  • 是否參與打包運(yùn)行(package指令范圍內(nèi))。

scope值

  • compile:默認(rèn)值,主程序、測(cè)試程序、打包運(yùn)行。

  • test:測(cè)試程序。

  • provided:主程序、測(cè)試程序。

  • runtime:測(cè)試程序、打包運(yùn)行。

4、生命周期

Maven的生命周期就是為了對(duì)所有的Maven項(xiàng)目構(gòu)建過(guò)程進(jìn)行抽象和統(tǒng)一。

maven中有3套相互獨(dú)立的生命周期(在同一套生命周期中,當(dāng)運(yùn)行后面的階段時(shí),前面的階段都會(huì)運(yùn)行):

  • clean:清理工作,移除上一次構(gòu)建生成的文件。

  • default:核心工作。如編譯、測(cè)試、打包、安裝、部署等。

    • compile:編譯項(xiàng)目源代碼。

    • test:使用合適的單元測(cè)試框架進(jìn)行測(cè)試。

    • package:將編譯后的文件打包,如jar、war等。

    • install:安裝項(xiàng)目到本地倉(cāng)庫(kù)。

  • site:生成報(bào)告、發(fā)布站點(diǎn)等。




后端 | Maven | 依賴管理的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
贞丰县| 公安县| 阿合奇县| 沁源县| 珠海市| 兴宁市| 岳阳县| 高安市| 长宁区| 民权县| 谢通门县| 德阳市| 东乌| 溧阳市| 溧水县| 互助| 运城市| 常州市| 腾冲县| 剑川县| 隆回县| 阳谷县| 库车县| 宜章县| 泰顺县| 崇明县| 大冶市| 景谷| 乌兰县| 兴海县| 土默特右旗| 赞皇县| 油尖旺区| 南昌县| 高清| 宾阳县| 武山县| 襄城县| 彭州市| 准格尔旗| 郴州市|