首頁 > 軟體

Maven使用方法詳及方式詳細介紹

2022-11-11 14:00:23

Maven簡介

1、軟體開發中的階段

需要分析:分析專案具體完成的功能,有什麼要求,具體怎麼實現。設計階段:根據分析的結果,設計專案的使用什麼技術,解決難點。開發階段:編碼實現功能,編譯程式碼,自我測試。測試階段:專業的測試人員,測整個專案的功能十分符合設計要求。出一個測試告。專案的打包,釋出階段:給使用者安裝專案。

2、Maven能做什麼

1)專案的自動構建,幫助開發人員做專案程式碼的編譯,測試,打包,安裝,部署等工作。

2)管理依賴(管理專案中使用的各種jar包)。

依賴:專案中需要使用的其他資源,常見的是jar比如專案要使用mysgl驅動,我們就說專案依賴mysgl驅動。

3、沒有使用maven怎麼管理依賴

管理jar,需要從網路中單獨下載某個jar,需要選擇正確版本,手工處理jar檔案之間的依賴。a.jar裡面要使用b.jar的類。

4、什麼是maven

maven是apache基金會的開源專案,使用java語法開發。Maven這個單詞的本意是:專家,內行。讀音是['meIv(e)n]或['mevn]。

maven是專案的自動化構建工具,管理專案的依賴。

約定目錄結構

maven專案使用的大多人遵循的目錄結構,叫做約定目錄結構。一個maven專案是一個資料夾。

比如專案叫做Hello

maven的使用方式

①maven可以獨立使用:建立專案,編譯程式碼,測試程式,打包,部署等等。

② maven和idea一起使用:通過idea藉助maven,實現編碼,測試,打包等等。

POM檔案

POM:Project Object Model專案物件模型,maven把專案當做模型處理。操作這個模型就是操作專案。maven通過pom.xml檔案實現專案的構建和依賴的管理。

pom 檔案:即 Project Object Model專案物件模型。 Maven把一個專案的結構和內 容抽象成一個模型,在xml檔案中進行宣告,以方便進行構建和描述,

pom.xml是Maven的靈魂。所以,maven環境搭建好之後,所有的學習和操

作都是關於pom.xml的。

那麼我們來看一下pom.xml檔案是什麼樣的

<?xml version="1.0" encoding="UTF-8"?>
        <!--project是跟標籤,後面是約束檔案-->
<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">
  <!--pom模型的版本,就是4.0.0-->
  <modelVersion>4.0.0</modelVersion>
  <!--座標-->
  <groupId>youfei1_v</groupId>
  <artifactId>ch01-Maven-j2se</artifactId>
  <version>1.0</version>
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
  </properties>
</project>

座標的概念

座標組成是groupid,artifiactld,version。座標概念來自數學。

座標作用:確定資源的,是資源的唯一標識。在maven中,每個資源都有座標。座標值是唯一的。簡稱叫gav。

拿servlet依賴舉例

		<!--servlet依賴-->
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>3.1.0</version> 

groupid:組織名稱,程式碼。公司,團體或者單位的標識。這個值常使用的公司域名的倒寫。例如:學校的網站www.sanlian.com,groupId:com.sanlian

如果專案規模比較大,也可以是域名倒寫+大專案名稱。

例如:www.baidu.com , 無人車:com.baidu.appollo

artifactid:專案名稱,如果groupId中有專案,此時當前的值就是子專案名。專案名稱是唯一的。

version:版本,專案的版本號,使用的數位。三位組成。例如主版本號,次版本號小版本號,例如:5.2.5。

注意:版本號中有-SNAPSHOT,表示快照,不是穩定的版本。

專案使用gav:

1.每個maven專案,都需要有一個自己的gav。

2.管理依賴,需要使用其他的jar,也需要使用gav作為標識。

依賴 dependency

依賴:專案中要使用的其他資源(jar)。

需要使用maven表示依賴,管理依賴。通過使用dependency和gav一起完成依賴的使用。

注意:需要在pom.xml檔案中,使用dependencies和dependency,還有gav完成依賴的說明。

使用依賴的格式:這裡拿junit依賴舉例,標籤中的指的是專案的公司,標籤中指的是專案名稱,標籤中指的是專案的版本。

  <dependencies>
    <!--測試-->
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.11</version>
    </dependency>
  </dependencies>

注意:標籤要放到標籤的下面

打包型別

標籤:專案打包的型別,有jar,war,ear,pom等等,預設是jar。

注意:標籤的放置位置是這個專案的座標下面

例如:

<!--座標-->
  <groupId>youfei1_v</groupId>
  <artifactId>ch01-Maven-j2se</artifactId>
  <version>1.0</version>
  <packaging>jar</packaging>

倉庫概念

倉庫是存東西的,maven的倉庫存放的是:

1.maven工具自己的jar包。

2.第三方的其他jar,比如專案中要使用mysql驅動。

3.自己寫的程式,可以打包為jar存放到倉庫。

修改本地倉庫位置

本地倉庫(本機倉庫):位於你自己的計算機,它是磁碟中的某個目錄

本地倉庫:預設路徑,是你登入作業系統的賬號的目錄中/.m2/repository

C:UsersNING MEI.m2repository

修改本地倉庫的位置:修改maven工具的組態檔(maven的安裝路徑confsetting.xml)步驟:

1)建立一個目錄,作為倉庫使用。目錄不要有中文和空格。目錄不要太深。

例如:D:oppo

2)修改setting.xml檔案,指定到剛剛建立的目錄,例如:D:oppo

範例演示:找到maven安裝目錄下的conf目錄中的settings.xml檔案,

在這個檔案裡面增加這個標籤,裡面指定新的倉庫地址

倉庫的工作方式

倉庫的分類

本地倉庫, 就是你的個人計算機上的資料夾,存放各種jar。

遠端倉庫,在網際網路上的,使用網路才能使用的倉庫。

①:中央倉庫,最權威的,所有的開發人員都共用使用的一個集中的倉庫,

②:中央倉庫的映象:就是中央倉庫的備份,在各大洲,重要的城市都有映象。

③:在公司內部,在區域網中使用的,不是對外使用的。

倉庫的使用,maven倉庫的使用不需要人為參與。

如果倉庫中有這個jar包就會用,沒有就會去網際網路上下載,從網路下載的資源,最終會存到本地倉庫一份, 當你下次在用的時候,直接從本地倉庫首先獲取資源。

例如開發人員需要使用mysql驅動,maven首先查本地倉庫—>私 服—>映象—>中央倉庫。

組態檔說明

例如:spring依賴和spring-aspects依賴,這些東西表示我們專案中要用到spring和spring-aspects jar包,由maven在倉庫中找到這個jar包並使用它。

<!--spring依賴-->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-context</artifactId>
      <version>5.2.5.RELEASE</version>
    </dependency>
    <!--spring-aspects依賴-->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-aspects</artifactId>
      <version>5.2.5.RELEASE</version>
    </dependency>

注意:執行命令要在專案的pom檔案所在的位置執行命名。

junit單元測試

單元測試(junit):

junit是一個單元測試的工具,在java中經常使用。

單元:在java中指的是方法。 一個方法就是一個單元,方法是測試的最小單位。

作用:使用junit去測試方法是否完成了要求。開發人員自測。

使用單元測試

  <dependencies>
    <!--測試-->
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.11</version>
    </dependency>
  </dependencies>

在src/test/java目錄中建立測試類檔案。寫測試程式碼,單元測試使用的建議:

1.測試類的定義,名稱一般是Test+要測試的類名稱

2.測試類它的包名和要測試的類包名一樣。

3.在類中定義方法,要測試程式碼。

方法的定義:public方法, 沒有返回值

方法名稱自定義(建議Test+測試的方法名稱)

方法沒有引數

4在測試類中的方法,可以單獨執行。測試類也可以單獨執行

5.在方法的上面加入@Test

生命週期與外掛和命令

maven的生命週期:專案構建的各個階段。包括清理,編譯,測試,報告,打包,安裝,部署。

外掛:要完成構建專案的各個階段,要使用maven的命令,執行命令的功能是通過外掛完成的。外掛就是jar,一些類。

命令:執行maven功能是由命令發出的。比如mvn compile

命令:

① mvn clean:清理命令,作用刪除以前生成的資料,刪除target目錄。

外掛:maven-clean-plugin,版本是2.5。

②mvn compile:編譯命令,執行的程式碼編譯,把src/main/java目錄中的java程式碼編譯為class檔案,同時把class檔案拷貝到target/classes目錄。這個目錄classes是存放類檔案的根目錄(也叫做類路徑, classpath)

外掛:maven-compiler-plugin版本3.1編譯程式碼的外掛

maven-resources-plugin版本2.6資源外掛,處理檔案的。作用是把src/main/resources目錄中的檔案拷貝target/classes目錄中。

③mvn test-compile:編譯命令,編譯src/test/java目錄中的原始檔,把生成的class拷貝到target/test-classes目錄。同時把src/test/resources目錄中的檔案拷貝到test-clasess目錄

外掛:maven-compiler-plugin版本31編譯程式碼的外掛

maven-resources-plugin版本2.6資源外掛,處理檔案的

④mvn test:測試命令,作用執行test-classes目錄的程式,測試src/main/java目錄中的主程式程式碼是否符合要求。

外掛:maven-surefire-plugin版本2.12.4

⑤mvn package:打包,作用是把專案中的資源class檔案和組態檔都放到一個床縮檔案中,預設壓縮檔案是jar

型別的。web應用是war型別,擴充套件是jar,war的。

外掛:maven-jar-plugin版本2.4執行打包處理。生成一個jar擴充套件的檔案,放在target目錄下,I

打包的檔案包含的是src/main目錄中的所有的生成的class和組態檔和test無關。

⑥mvn install:把生成的打包的檔案,安裝到maven倉庫。

外掛:maven-install-plugin版本2.4把生成的jar檔案安裝到本地倉庫。

注意:每執行一個命令,都會自動先執行前面的, 例如:執行第二個編譯命令,它首先會自動執行清理命令,執行第三個編譯test命令,它首先會自動執行第一個清理命令和第二個編譯命令。

自定義設定外掛

在pom.xml檔案中,build標籤中,設定外掛。

例如設定構建專案相關內容

<build>
<plugins>
<!--設定外掛-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>1.8</source> <!--指定編譯程式碼的jdk版本-->
<target>1.8</target> <!--執行java程式使用的jdk版本-->
</configuration>
</plugin>
</plugin>
</plugin>

注意:預設使用1.7版本的jdk 通過此方式 可以更改;build標籤和project標籤平級。

到此這篇關於Maven使用方法詳及方式詳細介紹的文章就介紹到這了,更多相關Maven使用方法內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com