亚州天堂爱爱,做爱视频国产全过程在线观看,成人试看30分钟免费视频,女人无遮挡裸交性做爰视频网站

? ? ?

Maven項目管理工具的介紹和使用(如何用maven管理項目)

在我們的項目開發過程中,常常會使用Maven作為依賴,來快速地引入依賴進行開發。很多人都知道maven或者使用的次數也非常多,今天我們就來了解一下maven,系統地介紹一下。

Maven項目管理工具的介紹和使用(如何用maven管理項目)

1、Maven的基本概念

Maven是跨平臺的項目管理工具。主要服務于基于Java平臺的項目構建,依賴管理和項目信息管理。接下來我們就來介紹一下項目構建和依賴管理。

1.1、項目構建

項目構建過程包括【清理項目】→【編譯項目】→【測試項目】→【生成測試報告】→【打包項目】→【安裝項目】→【部署項目】這幾個步驟,這幾個步驟就是一個項目的完整構建過程,我們在項目開發過程中不一定需要使用所有的步驟,往往只需要使用到其中幾個關鍵步驟。

Maven項目管理工具的介紹和使用(如何用maven管理項目)

[1] 清理clean:將以前編譯得到的舊文件class字節碼文件刪除,為下一次編譯做準備;

[2] 編譯compile:將java源程序編譯成class字節碼文件;

[3] 測試test:自動測試,自動調用junit程序;

[4] 報告report:測試程序執行的結果;

[5] 打包package:動態Web工程打War包,java工程打jar包;

[6] 安裝install:Maven特定的概念—–將打包得到的文件復制到“倉庫”中的指定位置;

[7] 部署deploy:將動態Web工程生成的war包復制到Servlet容器下,使其可以運行;

相關的maven命令:

  • mvn clean:清理;
  • mvn compile:編譯主程序;
  • mvn test-compile:編譯測試程序;
  • mvn test:執行測試;
  • mvn package:打包;
  • mvn install:安裝jar到本地倉庫;
  • mvn deploy:將最終的包復制到遠程的倉庫,以讓其它開發人員與項目共享;
  • mvn site:生成項目站點信息;
  • mvn clean install:組合命令,告訴Maven clean在每個模塊中執行install階段;

1.2、依賴管理

依賴指的是jar包之間的相互依賴,比如我們搭建一個struts2的開發框架時,如果只有struts2-core.jar這個jar包是不行的,struts2-core.jar還依賴其它的jar包,依賴管理指的就是使用Maven來管理項目中使用到的jar包,Maven管理的方式就是“自動下載項目所需要的jar包,統一管理jar包之間的依賴關系”。

2、Maven安裝

2.1、安裝或者查看環境

首先要確保開發環境已經安裝了JDK,配置好JDK的環境變量,使用如下的兩個命令檢查檢查JDK安裝的情況。

① Echo %JAVA_HOME%

② Java –version

Maven項目管理工具的介紹和使用(如何用maven管理項目)

2.2、下載maven

到官網maven.apache.org下載對應操作系統的版本,比如我是windows系統,我會選擇下載apache-maven-3.8.6-bin.zip,下載之后對zip壓縮文件進行解壓。如果是linux操作系統,可以下載后綴是gz格式的壓縮包。

Maven項目管理工具的介紹和使用(如何用maven管理項目)

2.3、設置系統環境變量

桌面“我的電腦”->右鍵打開“屬性”->“高級系統設置”->"環境變量" 中設置 MAVEN_HOME,設置為maven的解壓縮目錄。小編之前已經安裝了3.8.1版本,而不是最新的3.8.6版本,后續以此版本截圖說明。

Maven項目管理工具的介紹和使用(如何用maven管理項目)

2.4、設置環境變量Path

將%MAVEN_HOME%bin加入Path中,一定要注意要用分號;與其他值隔開。%MAVEN_HOME%bin代表的就是"D:installapache-maven-3.8.1bin"目錄(這是我的安裝目錄,每個人這里對應的自己的安裝目錄)。

2.5、驗證Maven安裝是否成功

打開cmd窗口,輸入"mvn –v"命令 查看Maven的相關信息。會顯示maven的版本、jdk的版本信息以及操作信息的相關信息。

Maven項目管理工具的介紹和使用(如何用maven管理項目)

3、Maven的簡單使用

3.1、Maven項目的目錄約定

Maven項目管理工具的介紹和使用(如何用maven管理項目)

3.2、maven的配置文件setting.xml

我們先來了解一下setting.xml 配置文件格式和內容。

Maven項目管理工具的介紹和使用(如何用maven管理項目)

上面這個例子看起來比較復雜,但我們在實際使用中往往只關注兩個方面,一個是配置本地倉庫的路徑,一個是設置下載依賴的來源。

<!--本地倉庫。該值表示構建系統本地倉庫的路徑。其默認值為~/.m2/repository。 -->  <localRepository>E:mavenRepositoryrepository</localRepository><!--為倉庫列表配置的下載鏡像列表。 -->  <mirror> <id>nexus-aliyun</id> <mirrorOf>central</mirrorOf> <name>Nexus aliyun</name> <url>http://maven.aliyun.com/nexus/content/groups/public</url></mirror>

配置好setting.xml 配置文件,然后就可以在開發工具中引入,我以IntelliJ IDEA為例。

Maven項目管理工具的介紹和使用(如何用maven管理項目)

4、Maven坐標

maven項目,跟maven相關的最重要的文件就是pom.xml文件了,我們來了解一下。

4.1、Maven坐標主要組成

  1. groupId:組織標識(包名);
  2. artifactId:項目名稱;
  3. version:項目的當前版本;
  4. packaging:項目的打包方式,最為常見的jar和war兩種。

<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.4.1</version> <relativePath /></parent><groupId>com.bianchengxia.springboot</groupId><artifactId>springboot</artifactId><version>0.0.1-SNAPSHOT</version><name>springboot</name><packaging>jar</packaging> <!-- jar或者war -->

4.2、依賴管理

我們在標簽對dependencies內,引入項目所需要的依賴。

<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-autoconfigure</artifactId> </dependency> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.1.2</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <!--切面日志 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId> </dependency> <!--mybatis --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.3</version> </dependency> <!-- mysql依賴jar --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.22</version> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope> </dependency></dependencies>

4.3、添加外部依賴

正常的我們引入遠程倉庫的依賴,直接可以是使用上面的方式,但是如果我們需要引入項目里面的依賴,比如一個開源的項目有一個私有的依賴包,我們下載下來之后需要引入才能正常運行或者打包。那我們就可以使用下面的方式:除了引入依賴之外,再添加配置,設置includeSystemScope為true。

<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <!--打包時將外部引入的jar包打包,不加此配置,本地可以運行,但服務器上jar中是沒有的--> <includeSystemScope>true</includeSystemScope> </configuration> </plugin> </plugins></build>

Maven項目管理工具的介紹和使用(如何用maven管理項目)

5、Maven倉庫

maven倉庫的分類:本地倉庫和遠程倉庫。其中遠程倉庫包括中央倉庫、私服和其他公共庫。

Maven項目管理工具的介紹和使用(如何用maven管理項目)

5.1、遠程倉庫

(1)中央倉庫:Maven默認的遠程倉庫,中央倉庫是遠程倉的核心。中央倉庫包含了絕大多數流行開源Java構件,以及源碼、作者信息、SCM、信息、許可證信息等。如果中央倉庫慢可以用mirrors來替換它,它的id是central。

<!-- 中央倉庫 --><repositories> <repository> <id>central</id> <name>Central Repository</name> <url>http://repo.maven.apache.org/maven2</url> <layout>default</layout> <snapshots> <enabled>false</enabled> </snapshots> </repository></repositories>

(2)私服:是一種特殊的遠程倉庫,maven私服是指私有服務器,是針對局域網而言的,目的是代理遠程倉庫及部署第三方構建,很多公司會搭建自己的私服。有了私服之后,當 Maven 需要下載構件時,直接請求私服,私服上存在則下載到本地倉庫;否則,私服請求外部的遠程倉庫,將構件下載到私服,再提供給本地倉庫下載。

(3)其他公共庫:默認的遠程倉庫也就是中央倉庫往往下載比較慢,所以很多公司會搭建私服,但是搭建私服也比較麻煩,這個時候有人就想,能不能使用“拿來主義”直接使用別人搭建好的倉庫呢?當然可以,這就是其他公共庫,對外開放,我們可以直接使用。比如我們在上面的setting.xml 配置文件里面<mirror>標簽對里面設置的倉庫,就是阿里云開放的公共倉庫。

5.2、本地倉庫

maven在本地存儲構件的路徑,一般本地倉庫地址可以在settings.xml里邊指定。我們在上面介紹settings.xml文件時也說明了,設置localRepository元素的值為本地倉庫路徑。

Maven項目管理工具的介紹和使用(如何用maven管理項目)

6、maven模塊聚合和繼承

6.1、頂級pom文件配置

Maven項目管理工具的介紹和使用(如何用maven管理項目)

6.2、模塊聚合配置

Maven項目管理工具的介紹和使用(如何用maven管理項目)

6.3、繼承配置代碼

Maven項目管理工具的介紹和使用(如何用maven管理項目)

繼承代碼過程中,可以定義屬性,例如:

<!--屬性定義--><properties> <!--項目構建基本配置--> <spring.version>3.2.0.RELEASE</spring.version> <struts.version>2.3.15.1</struts.version> <servlet.version>3.0.1</servlet.version> <urlrewriter.version>4.0.4</urlrewriter.version></properties>

訪問屬性的方式為${junit.version},例如:

<dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>${junit.version}</version> <scope>test</scope></dependency>

父模塊用dependencyManagement進行管理:

<dependencyManagement> <dependencies> <dependency> <groupId>com.tydic.framework</groupId> <artifactId>frameworkbase</artifactId> <version>${framework.version}</version> </dependency> </dependencies><dependencyManagement>

版權聲明:本文內容由互聯網用戶自發貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發現本站有涉嫌抄襲侵權/違法違規的內容, 請發送郵件至 舉報,一經查實,本站將立刻刪除。

(0)
上一篇 2023年11月21日 下午6:32
下一篇 2023年11月21日 下午6:48

相關推薦

  • Java GUI 桌面應用開發(java開發桌面應用程序)

      前言   雖然現在已經很少項目會涉及GUI技術,但作為一個合格的Java開發工程師,還是得了解才得   本文記錄,idea使用JFormDesigner插件進行Java GUI…

    科研百科 2024年5月1日
    67
  • 臺州:“一釘到底”提升警保審批管理效能(警保工作要求)

    近年來,浙江省臺州市公安局立足現代警務保障需求,以數智賦能為核心,持續推動數字化改革迭代升級。今年7月,該局在推出24項釘釘應用基礎上,創新推出浙政釘App“一釘到底”審批管理系統…

    科研百科 2025年1月11日
    1
  • 一個出租車司機的客戶關系管理理念,懂得定位自己,就有機會。

    一個出租車司機的客戶關系管理(CRM)理念,周春明,被譽為臺灣“出租車皇帝”,中國的“卡耐基”。當其它出租車司機還在路上急急尋找下一個客人時,他煩惱的,卻是挪不出時間照顧老客戶。他…

    科研百科 2023年12月5日
    88
  • 科研項目團隊制

    科研項目團隊制: 推動科技創新的引擎 科研項目團隊制是推動科技創新的重要引擎。在一個團隊中,科學家們可以更加有效地合作,交流,分享知識和經驗,從而創造出更加先進的成果。以下是一些為…

    科研百科 2025年2月15日
    0
  • 研發過程中的產品出售

    研發過程中的產品出售 隨著科技的不斷發展,我們的產品也在不斷創新。在研發過程中,我們不斷嘗試新的技術,以確保我們的產品能夠達到預期的性能和質量水平。然而,隨著研發工作的不斷推進,我…

    科研百科 2024年10月12日
    10
  • 武漢市衛計委科研項目公示

    武漢市衛計委科研項目公示 為加強科研項目管理,提高科研項目質量,武漢市衛計委對近期推出的科研項目進行公示。 本次公示的科研項目共有10項,涉及醫學、教育、科技等多個領域,分別是: …

    科研百科 2024年10月10日
    10
  • 工程進度軟件

    工程進度軟件:讓項目管理更加高效 隨著現代工程的快節奏和復雜性,如何有效地管理項目進度成為了一個重要的問題。傳統的手動記錄和追蹤進度的方法已經無法滿足現代項目的需求,因此,工程進度…

    科研百科 2024年8月18日
    27
  • 英國華威大學項目管理碩士項目介紹

    大學簡介 英方:華威大學(The University of Warwick) 華威大學創立于1965年,是英國頂尖的教學與研究型大學之一。作為英國羅素集團(Russell Gro…

    科研百科 2022年11月22日
    144
  • 軟件項目團隊管理的定義(軟件項目團隊管理)

    軟件項目團隊管理 軟件項目團隊管理是軟件開發過程中至關重要的一環。一個好的軟件項目團隊能夠確保項目按時、按質量完成,并滿足客戶的需求。本文將介紹軟件項目團隊管理的基本概念、方法和技…

    科研百科 2024年9月2日
    33
  • 工程進度計劃管理系統

    工程進度計劃管理系統 隨著現代工程的迅速發展,工程進度計劃管理系統已經成為保證工程進度和質量的必要工具。一個有效的工程進度計劃管理系統可以幫助工程師更好地組織和管理項目,確保項目按…

    科研百科 2024年9月22日
    18