Maven的常用命令總結大全
一、Maven的常用命令
我們可以在cmd 中通過一系列的 maven 命令來對我們的 maven-helloworld 工程進行編譯、測試、運行、打包、安裝、部署。
1、compile 編譯命令
compile 是 maven 工程的編譯命令,作用是將 src/main/java 下的文件編譯為 class 文件輸出到 target目錄下。cmd 進入命令狀態(tài),執(zhí)行mvn compile,如下圖提示成功:
查看 target 目錄,class 文件已生成,編譯完成。
2、test 測試命令
test 是 maven 工程的測試命令 mvn test,會執(zhí)行src/test/java下的單元測試類。
cmd 執(zhí)行 mvn test 執(zhí)行 src/test/java 下單元測試類,下圖為測試結果,運行 1 個測試用例,全部成功。
3 、clean 清理命令
clean 是 maven 工程的清理命令,執(zhí)行 clean 會刪除 target 目錄及內容。
4、package 打包命令
package 是 maven 工程的打包命令,對于 java 工程執(zhí)行 package 打成 jar 包,對于web 工程打成war包。
5、 install 安裝命令
install 是 maven 工程的安裝命令,執(zhí)行 install 將 maven 打成 jar 包或 war 包發(fā)布到本地倉庫。
從運行結果中,可以看出:當后面的命令執(zhí)行時,前面的操作過程也都會自動執(zhí)行,
6、Maven 指令的生命周期
maven 對項目構建過程分為三套相互獨立的生命周期,請注意這里說的是“三套”,而且“相互獨立”。
這三套生命周期分別是:
Clean Lifecycle 在進行真正的構建之前進行一些清理工作。
Default Lifecycle 構建的核心部分,編譯,測試,打包,部署等等。
Site Lifecycle 生成項目報告,站點,發(fā)布站點。
命令 | 說明 |
---|---|
mvn clean | 清除target目錄 |
mvn compile | 編譯main目錄 |
mvn test | 執(zhí)行所有的測試方法 |
mvn package | 打包當前的項目到target目錄 |
mvn install | 打包并且發(fā)布到本地倉庫 |
二、maven 的概念模型
Maven 包含了一個項目對象模型 (Project Object Model),一組標準集合,一個項目生命周期(Project Lifecycle),一個依賴管理系統(tǒng)(Dependency Management System),和用來運行定義在生命周期階段(phase)中插件(plugin)目標(goal)的邏輯。
- 項目對象模型 (Project Object Model)
一個 maven 工程都有一個 pom.xml 文件,通過 pom.xml 文件定義項目的坐標、項目依賴、項目信息、插件目標等。
- 依賴管理系統(tǒng)(Dependency Management System)
通過 maven 的依賴管理對項目所依賴的 jar 包進行統(tǒng)一管理。比如:項目依賴 junit4.9,通過在 pom.xml 中定義 junit4.9 的依賴即使用 junit4.9,如下所示是 junit4.9的依賴定義:
<!-- 依賴關系 --> <dependencies> <!-- 此項目運行使用 junit,所以此項目依賴 junit --> <dependency> <!-- junit 的項目名稱 --> <groupId>junit</groupId> <!-- junit 的模塊名稱 --> <artifactId>junit</artifactId> <!-- junit 版本 --> <version>4.9</version> <!-- 依賴范圍:單元測試時使用 junit --> <scope>test</scope> </dependency> <dependencies>
- 一個項目生命周期(Project Lifecycle)
使用 maven 完成項目的構建,項目構建包括:清理、編譯、測試、部署等過程,maven 將這些
過程規(guī)范為一個生命周期,如下所示是生命周期的各各階段:
maven 通過執(zhí)行一些簡單命令即可實現(xiàn)上邊生命周期的各各過程,比如執(zhí)行 mvn compile 執(zhí)行編譯、執(zhí)行 mvn clean 執(zhí)行清理。
- 一組標準集合
maven將整個項目管理過程定義一組標準,比如:通過 maven 構建工程有標準的目錄結構,有標準的生命周期階段、依賴管理有標準的坐標定義等。
- 插件(plugin)目標(goal)
maven 管理項目生命周期過程都是基于插件完成的。
總結
到此這篇關于Maven的常用命令總結的文章就介紹到這了,更多相關Maven常用命令內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
jasypt對配置文件的數(shù)據(jù)加密與解密方式
這篇文章主要介紹了jasypt對配置文件的數(shù)據(jù)加密與解密方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-01-01springboot使用DynamicDataSource動態(tài)切換數(shù)據(jù)源的實現(xiàn)過程
這篇文章主要給大家介紹了關于springboot使用DynamicDataSource動態(tài)切換數(shù)據(jù)源的實現(xiàn)過程,Spring Boot應用中可以配置多個數(shù)據(jù)源,并根據(jù)注解靈活指定當前使用的數(shù)據(jù)源,需要的朋友可以參考下2023-08-08SpringBoot基于Swagger2構建API文檔過程解析
這篇文章主要介紹了SpringBoot基于Swagger2構建API文檔過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2019-11-11Spring中的InitializingBean接口源碼解析
這篇文章主要介紹了Spring中的InitializingBean接口源碼解析,InitializingBean接口為Bean初始化提供了一種方式,實現(xiàn)InitializingBean接口的Bean,在BeanFactory設置其所有屬性后會調用其afterPropertiesSet()方法,需要的朋友可以參考下2024-02-02使用spring通過aop獲取方法參數(shù)和參數(shù)值
這篇文章主要介紹了使用spring通過aop獲取方法參數(shù)和參數(shù)值,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-09-09