亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

什么是Maven及如何配置國內源實現(xiàn)自動獲取jar包的操作

 更新時間:2024年11月18日 14:50:46   作者:GGBondlctrl  
本文介紹了Maven的基本概念,包括項目構建、依賴管理、倉庫管理以及如何設置國內源,通過Maven,開發(fā)者可以自動化管理項目的依賴和構建流程,提高開發(fā)效率,感興趣的朋友跟隨小編一起看看吧

???1.Maven的了解

1.1什么是Maven

 在官方的文檔中對于Maven的介紹是如下所示的:Welcome to Apache Maven – Maven

 翻譯過來就是: Maven是?個項?管理?具?;赑OM(Project Object Model,項?對象模型)的概念,Maven可以通 過??段描述信息來管理項?的構建,報告和?檔的項?管理?具軟件。

但是大白話就是:

Maven是?個項?管理?具, 通過pom.xml?件的配置獲取jar包,?不??動去添加jar包 

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

那么接下來就跟著小編進行操作吧~~~

注意:IDEA本?已經集成了Maven, 我們可以直接使?, ?需安裝

步驟:File -> New -> Project

如下圖所示:

然后點擊創(chuàng)建即可,此時我們就成功創(chuàng)建了一個Maven項目;

1.3Maven的核心功能

1.項目構建

Maven 提供了標準的,跨平臺(Linux, Windows, MacOS等)的?動化項?構建?式

當我們開發(fā)了?個項?之后, 代碼需要經過編譯, 測試, 打包, 發(fā)布等流程, 每次代碼的修改, 都需要經過 這些流程, 如果代碼反復調試修改, 這個流程就需要反復進?, 就顯得特別?煩,, ?Maven 給我們提供了 ?套簡單的命令來完成項目的構建

點擊右邊框的Maven按鍵:

然后點擊這里的打包按鈕,此時那么就進行打包的操作了,具體控制臺的顯示如下:

并且,我們可以發(fā)現(xiàn)此時在我們的項目創(chuàng)建的欄目中可以看到,多了一個jar為后綴的項目,就是我們所打的jar包:

解釋:

打包就是把所有的class?件, 全部放在?起, 打成jar包或者war包 jar包和war包都是?種壓縮?件

jar包:就是把開發(fā)?員已經寫好的?些代碼進?打包. 打好的jar包就可以引?到其他項?中, 也可以直 接使?這些jar包中的類和屬性.

打成可執(zhí)?jar包:這樣的包就可以通過java -jar命令來執(zhí)?

war包:可以理解為是?個web項?,??是項?的所有東西, 通常?于?站

2.管理依賴

上?說到, Maven是?個項?管理?具, 通過pom.xml?件的配置獲取jar包,?不??動去添加jar包 獲取的jar包, 其實就是依賴

依賴配置

在之前學習JDBC的時候,我們要添加mysql-connector-java的包.并且添加到項?中,此時才可以建立數(shù)據(jù)庫與idea的連接

此時我們使用Maven的時候,直接可以通過代碼操作直接導入jar包的操作,我們只需要在pom.xml中引?mysql-connector-java的依賴就可以了;

此時代碼如下所示:

<dependencies>
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.30</version>
    </dependency>
</dependencies>

解釋:

在<dependencies>中部的所有代碼描述的就是建立依賴的坐標

注意引入代碼后一定要記得刷新頁面;

Maven管理依賴的好處

使?maven的話, 就可以避免管理所需依賴的關系。我們只需要在pom?件中, 定義直接依賴就可以 了, 由于maven的依賴具有傳遞性,所以會?動把所依賴的其他jar包也?起導?

如下圖所示:

解釋:

在Maven項目引入jar包A后,那么此時就會自動的引入jar包A所依賴的jar包,那么此時就會自動一如jar包B與jar包C;

依賴的排除

當前階段我們需要依賴的庫并不多, 但隨著項?的越來越復雜, 庫之間的依賴關系也會變得越來越復雜. 如上圖中, 如果項?A不需要Jar B,也可以通過排除依賴的?式來實現(xiàn)

此時我們主動使用代碼進行依賴的排除:

<dependency>
     <groupId>org.springframework</groupId>
     <artifactId>spring-core</artifactId>
     <version>6.0.6</version>
     <!--排除依賴-->
     <exclusions>
          <exclusion>
          <artifactId>spring-jcl</artifactId>
          <groupId>org.springframework</groupId>
          </exclusion>
     </exclusions>
</dependency>

但是在idea中有一個插件可以幫助執(zhí)行依賴的排除;

Maven helper插件

當項??較復雜時, 我們就會有Jar包沖突的問題, 這時候就需要去解決依賴沖突. 解決沖突之前, 需要先 找到沖突, 我們可以使?Maven Help插件來觀察包和包之間的依賴關系

下載方式:

File -> Settings ->Plugins -> 搜索'Maven Help' -> 找到對應插件, 點擊Install 安裝即可, 安裝 后需要重啟下idea, 才能?效

圖示如下:

注意:下載后記得一定一定要進行重啟的操作;

然后我們點擊下面的依賴選項,可以看到依賴的關系:

此時我們可以通過手動右擊鼠標,然后就可以進行手動的刪除這里的某些依賴;

???2.Maven的倉庫

我們通過短短??代碼, 就把依賴jar包放在了項??, 具體是如何做的呢?

<dependencies>
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.30</version>
    </dependency>
</dependencies>

解釋:

這個代碼, 我們稱之為 "坐標", 也就是唯?的. 在Maven中, 根據(jù) groupId、artifactId、version 的配置, 來唯?識別?個 jar 包, 缺?不可. 當我們在pom?件中配置完依賴之后, 點擊刷新, Maven會根據(jù)坐標的配置, 去倉庫?尋找Jar包, 并把他 下載下來, 添加到項?中. 這個Jar包下載的地?就稱為倉庫

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

2.1本地倉庫

本地倉庫: ??計算機上的?個?錄(?來存儲jar包) 當項?中引?對應依賴jar包后,?先會查找本地倉庫中是否有對應的jar包 • 如果有,則在項?直接引? • 如果沒有,則去中央倉庫中下載對應的jar包到本地倉庫;

本地倉庫地址可以通過Maven配置查看:

注意:小編這里的本地倉庫已經是通過了國內源的配置的(下文有講到) 

2.2中央倉庫 

中央倉庫: maven 軟件中內置?個遠程倉庫地址,就是中央倉庫,服務于整個互聯(lián)?. 由 Maven 團隊 維護,全球唯?.

倉庫地址:https://repo1.maven.org/maven2/

可以通過https://mvnrepository.com 這個?站來查詢并下載

我們可以把??寫好的Jar包上傳到中央倉庫(具備?定的要求), 也可以從中央倉庫下載Jar包

例如:我們進行jar包的查詢

這里由于是國外的網(wǎng)站,所以訪問比較慢,所以小編推薦使用加速器~~~

點擊進入:

 注意:一般來說點擊沒有漏洞的,并且這里的使用的人數(shù)盡可能多,這里點擊8.3.0~~~

往下面進行翻,可以看到此時的依賴的代碼;

這就是我們添加進入我們idea中的依賴的代碼源,就是我們jar包的坐標;

2.3私有服務器

私服: ?般由公司團隊搭建的私有倉庫. 私服屬于某個公司,或者某個部?, 往往需要?定權限. 有了私服之后, Maven依賴下載的順序?發(fā)?了變化

如圖所示:

解釋:

1. 先從本地倉庫獲取, 本地倉庫存在, 則直接返回

2. 如果本地倉庫沒有, 就從私服請求, 私服存在該資源, 就直接返回

3. 如果私服上不存在該資源,則從中央倉庫下載, 中央倉庫不存在, 就報錯了...

4. 如果中央倉庫中存在, 就先緩存在私服上之后,再緩存到本地倉庫?, 再為Maven的下載請求提供服 務

2.4Maven設置國內源

因為中央倉庫在國外, 所以下載起來會?較慢, 所以咱們選擇借助國內?些公開的遠程倉庫來下載資源 接下來介紹, 如何設置國內源

國內使?時會?較慢,我們可以更換為阿?云 的倉庫

打開settings.xml, 在 mirrors 節(jié)點上,添加內容如下:

<mirror>
 <id>aliyunmaven</id>
 <mirrorOf>central</mirrorOf>
 <name>阿?云公共倉庫</name>
 <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
 </mirror>

然后將這個這個settings的xml文件添加到第一排這個文件路徑目錄上

小編這里是將這里的repository復制到新的路徑上面去了,所以這里的路徑就不是默認的;

然后這里的setting的文件就是如下:

點擊進入:小編這里使用的是sublime文本編輯器,所以具體的樣式就是如下所示的:

小編這里只截取了一小部分,所以就在你們的settings中添加就可以了,如果沒有就私信小編哦,小編為你解答~~~

???3.總結

本期總結了關于Maven在項目開發(fā)中的重要作用,從什么是Maven到理解它的核心功能,以及如何管理它的倉庫,進行jar包坐標的配置,以及如何設置國內源都進行了詳細的講述;

到此這篇關于什么是Maven,以及如何配置國內源實現(xiàn)自動獲取jar包的文章就介紹到這了,更多相關Maven自動獲取jar包內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Java實現(xiàn)鼠標隨機移動效果的示例代碼

    Java實現(xiàn)鼠標隨機移動效果的示例代碼

    有的時候我們需要鼠標一直滑動的情況,為了節(jié)省時間,本文用Java語言寫了一個腳本,可以實現(xiàn)鼠標隨機移動,感興趣的小伙伴可以了解一下
    2022-05-05
  • Spring MVC學習教程之視圖深入解析

    Spring MVC學習教程之視圖深入解析

    這篇文章主要給大家介紹了關于Spring MVC學習教程之視圖解析的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或使用spring mvc具有一定的參考學習價值,需要的朋友們下面來一起看看吧
    2018-11-11
  • Java中關于String的全面解析

    Java中關于String的全面解析

    這篇文章主要介紹了Java中關于String全面解析,下面我們來一起學習一下吧
    2019-05-05
  • Java WebSocket客戶端接收大量數(shù)據(jù)的三種方案

    Java WebSocket客戶端接收大量數(shù)據(jù)的三種方案

    WebSocket是一種基于TCP協(xié)議的全雙工通信協(xié)議,它能夠在客戶端和服務器之間建立一個持久連接,實現(xiàn)實時的雙向數(shù)據(jù)傳輸,在實際應用中,有時候我們需要處理大量的數(shù)據(jù),所以本文將介紹如何使用 Java WebSocket 客戶端接收大量數(shù)據(jù),并提供一些優(yōu)化方案
    2023-11-11
  • 詳解Spring學習總結——Spring實現(xiàn)AOP的多種方式

    詳解Spring學習總結——Spring實現(xiàn)AOP的多種方式

    這篇文章主要介紹了詳解Spring學習總結——Spring實現(xiàn)AOP的多種方式,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01
  • Spring Boot項目搭建的兩種方式

    Spring Boot項目搭建的兩種方式

    springboot簡單快捷方便的優(yōu)點深受用戶喜愛,springboot開發(fā)環(huán)境搭建過程是每個開發(fā)者必須要做的工作,今天小編寫的一篇教程關于Spring Boot項目搭建方法,通過兩種方式給大家介紹的非常詳細,需要的朋友參考下吧
    2021-06-06
  • java解析excel文件的方法

    java解析excel文件的方法

    這篇文章主要介紹了java解析excel文件的方法,這里整理相關的代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2017-02-02
  • Linux下Java開發(fā)環(huán)境搭建以及第一個HelloWorld

    Linux下Java開發(fā)環(huán)境搭建以及第一個HelloWorld

    這篇文章主要介紹了Linux下Java開發(fā)環(huán)境搭建以及第一個HelloWorld的實現(xiàn)過程,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2015-09-09
  • SpringBoot 集成 Nebula的操作過程

    SpringBoot 集成 Nebula的操作過程

    這篇文章主要介紹了SpringBoot 集成 Nebula的操作過程,通過示例代碼介紹了java 環(huán)境下如何對 Nebula Graph 進行操作,感興趣的朋友跟隨小編一起看看吧
    2024-05-05
  • SpringBoot實現(xiàn)優(yōu)雅停機的正確方法

    SpringBoot實現(xiàn)優(yōu)雅停機的正確方法

    什么叫優(yōu)雅停機?就是向應用進程發(fā)出停止指令之后,能保證正在執(zhí)行的業(yè)務操作不受影響,直到操作運行完畢之后再停止服務。本文就來和大家聊聊SpringBoot實現(xiàn)優(yōu)雅停機的正確姿勢,希望對大家有所幫助
    2023-01-01

最新評論