Maven項目的構建過程


1. 手動構建Maven項目

  1. 構建Maven標准的項目結構,如圖

image

  1. 在main\java目錄下創建示例java文件(按包路徑存放)。

    package idv.jarjack;
    
    public class Demo{
    	public String say(String name){
    		System.out.println("Hello " +name);
    		return "Hello " +name;
    	}
    }
    
  2. 在test\java目錄下創建java示例的測試用文件(按包路徑存放),需要引入測試依賴包【junit】。

    package idv.jarjack;
    
    import org.junit.Test;
    import org.junit.Assert;
    
    public class DemoTest{
    	@Test
    	public void testSay(){
    		Demo demo = new Demo();
    		String str = demo.say("maven");
    		Assert.assertEquals("Hello maven", str);
    	}
    }
    
  3. 在本項目的根目錄下創建Maven項目的配置文檔【pom.xml】。

    <?xml version="1.0" encoding="UTF-8"?>
    <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/maven-v4_0_0.xsd">
       <modelVersion>4.0.0</modelVersion>
    
       <!-- 設置Maven項目的屬性 -->
       <groupId>idv.jarjack</groupId>
       <artifactId>project-java</artifactId>
       <version>1.0</version>
       <packaging>jar</packaging>
    
       <!-- 聲明項目引入的依賴包的坐標 -->
       <dependencies>
          <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
             <version>4.12</version>
          </dependency>
       </dependencies>
    </project>
    
  4. 使用Maven的構建命令手動構建項目

    在項目根目錄下的cmd窗口使用以下指令。

image

  • 使用mvn compile指令

    • 第一次使用該指令時,會從遠程倉庫下載編譯功能相關的插件到本地,再進行編譯,故時間較長,顯示build success則編譯成功。
    • 可發現Maven中的【repository】目錄存放了剛從阿里雲倉庫下載的插件文件。
    • 此時可見項目根目錄出現了【target】目錄,用於存放編譯后的二進制文件。
  • 使用mvn clean指令,清除已構建的項目,此時發現target目錄被清除了。

  • 使用mvn test指令

    • cmd窗口會顯示測試結果。
    • 此時【target】目錄下新增更多內容,其中的【surefire-reports】目錄存放了測試報告。
  • 使用mvn package指令

    • 會發現【target】目錄下出現了項目的jar包,該指令只會將編譯后的二進制文件打包。
    • 打包指令默認自動將編譯和測試操作實現一遍,再進行打包。
  • 使用mvn install指令,會發現該項目的jar包被發布到本地倉庫目錄中,該指令默認會將編譯、測試、打包操作都實現一遍。

2. 調用用功能插件構建Maven項目

在任意目錄下的cmd窗口運行以下指令,Maven會調用插件自動在當前目錄構建項目目錄。

mvn archetype:generate
	-DgroupId=工作組ID
	-DartifactId=項目ID
	-Dversion=項目版本號-snapshot
	-DarchetypeArtifactId=使用的項目模板
	-DinteractiveMode=false

如使用web項目模板,可在任意目錄下自動構建一個web項目的目錄結構

mvn archetype:generate -DgroupId=idv.jarjack -DartifactId=project-web -Dversion=1.0-snapshot -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false

生成的web目錄與普通java項目對比:

image

3. 在IDEA中構建Maven項目

  1. 打開IDEA設置界面的Maven項,將默認的Maven程序設為自己本地的Maven。

image

  1. 新建一個Maven項目,IDEA會自動在指定路徑創建Maven標准項目結構目錄,右邊欄出現Maven控制面板,可執行生命周期中的構建命令。

image


一些技巧

1. 在Maven安裝Tomcat插件

  • Maven中可安裝Tomcat插件,只需在項目模型配置【pom.xml】中的<build> / <plugins> / <plugin>標簽路徑下添加插件坐標即可,Maven會自動下載資源到本地,插件坐標可在Maven遠程倉庫查找。如:
<build>
   <plugins>
    	<plugin>
            <groupId>org.apache.tomcat.maven</groupId>
            <artifactId>tomcat7-maven-plugin</artifactId>
            <version>2.1</version>
        </plugin>
    </plugins>
</build>
  • 添加到【pom.xml】后,刷新Maven控制台,可見Maven正在下載插件並安裝

image

  • 使用【tomcat7:run】等指令可使用該插件,若啟動時顯示encoding報警,則在【pom.xml】中添加

    <properties>
    	<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>
    

2. 在IDEA中自定義運行指令

image
image
image
image


免責聲明!

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



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