Maven基礎學習(一)—Maven入門


一、概述

     Maven是一個項目管理工具,它包含了一個項目對象模型(Project Object Model),一組標准集合,一個項目生命周期(Project Lifecycle),一個依賴管理系統(Dependency Management System),和用來運行定義在生命周期階段(phase)中插件(plugin)目標(goal)的邏輯。當你使用Maven的時候,你用一個明確定義的項目對象模型來描述你的項目,然后Maven可以應用橫切的邏輯,這些邏輯來自一組共享的(或者自定義的)插件。
     Maven有一個生命周期,當你運行mvn install的時候被調用。這條命令告訴Maven執行一系列的有序的步驟,直到到達你指定的生命周期。遍歷生命周期旅途中的一個影響就是,Maven 運行了許多默認的插件目標,這些目標完成了像編譯和創建一個JAR文件這樣的工作。
     此外,Maven能夠很方便的幫你管理項目報告,生成站點,管理JAR文件,等等。

1.項目的構建流程

image

 

2.Maven模型

           image

3.Maven的約定

src/main/java: 存放項目的java文件。

src/main/resources: 存放項目的資源文件,如spring,hibernate的配置文件。

src/test/java: 存放所有的測試的java文件。

src/test/resources: 存放測試用的資源文件。

target: 項目輸出位置。

pom.xml 文件

 

 

二、基礎入門

1.下載jar包並解壓

image

bin: 含有mvn運行的腳本。

boot: 含有plexus-classworlds類加載器框架 。

conf: 含有settings.xml配置文件。

lib: 含有Maven運行時所需要的java類庫。

LICENSE.txt, NOTICE.txt, README.txt針對Maven版本,第三方軟件等簡要介紹。

 

2.配置環境變量

(1)在path路徑添加Maven的bin目錄路徑

    D:\maven-3.3.9\bin

(2)添加環境變量 M2_HOME

     M2_HOME = D:\maven-3.3.9

 

3.建庫

(1)打開路徑

     C:\Users\Administrator\.m2

 

(2)復制settings.xml到上述路徑

    D:\maven-3.3.9\conf目錄下有settings.xml文件,復制到上面的路徑下。

 

(3)修改settings.xml文件

image

(4)配置Eclipse

第一步

image

 

第二步

image

 

第三步

image

     -Dmaven.multiModuleProjectDirectory=$M2_HOME

 

4.Hello

(1)新建一個MavenProject

image

image

image

 

(2)創建Java文件

     稍等片刻,這個工程左上角會出現M字樣。

image

One.java

public class One{

	public String say(String name){
	
		return "Hello Maven " + name;
	}
}

 

OneTest.java

public class OneTest{
	
	@Test
	public void testOne(){
		One one = new One();
		String result = one.say("AAA");
		Assert.assertEquals("Hello Maven AAA",result);
	}
}

 

(3)運行項目

     單擊右鍵項目"run as"--->maven build,在Navigator視圖下可以看到target目錄下有文件了。

     image

 

(4)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> 
  <!-- 群組ID: 公司域名反寫 -->
  <groupId>com.kiwi</groupId>
  <!-- 項目ID: 一個公司只有一個域名,但是可以有多個項目 -->
  <artifactId>One</artifactId>
  <!-- 版本號: 用於描述開發過程的階段性標識-->
  <version>0.0.1-SNAPSHOT</version>

  <!-- 默認字符集 -->
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

 <!-- 依賴管理 -->
  <dependencies>
	  	<!-- 具體的依賴 -->
	    <dependency>
		      <groupId>junit</groupId>
		      <artifactId>junit</artifactId>
		      <version>4.9</version>
		      <scope>test</scope>
	    </dependency>
  </dependencies>
</project>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM