一、Maven常用命令及其介紹
| 命令 | 描述 |
| mvn clean | 對專案進行清理,洗掉target目錄下編譯的內容 |
| mvn compile | 編譯專案源代碼 |
| mvn test | 對專案進行運行測驗 |
| mvn package | 打包檔案并存放到專案的target目錄下,打包好的檔案通常都是編譯后的class檔案 |
| mvn install | 在本地倉庫生成倉庫的安裝包,可供其他專案參考,同時打包后的檔案放到專案的target目錄下 |
二、常用命令使用場景舉例
1. mvn clean package
依次執行了clean、resources、compile、testResources、testCompile、test、jar(打包)等7個階段
package命令完成了專案編譯、單元測驗、打包功能,但沒有把打好的可執行jar包(war包或其它形式的包)布署到本地maven倉庫和遠程maven私服倉庫
2. mvn clean install
依次執行了clean、resources、compile、testResources、testCompile、test、jar(打包)、install等8個階段
install命令完成了專案編譯、單元測驗、打包功能,同時把打好的可執行jar包(war包或其它形式的包)布署到本地maven倉庫,但沒有布署到遠程maven私服倉庫
擴展:將本地jar部署到本地maven倉庫,示例
mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc7 -Dversion=12.0.1.2 -Dpackaging=jar -Dfile=E:\Java\ojdbc7.jar
命令注解:
mvn install:install-file
-Dfile=jar包存放的位置
-DgroupId=pom檔案里的groupId
-DartifactId=pom檔案里的artifactId
-Dversion=pom檔案里的version
-Dpackaging=jar
3. mvn clean deploy
依次執行了clean、resources、compile、testResources、testCompile、test、jar(打包)、install、deploy等9個階段
deploy命令完成了專案編譯、單元測驗、打包功能,同時把打好的可執行jar包(war包或其它形式的包)布署到本地maven倉庫和遠程maven私服倉庫
無論部署到私服還是公有倉庫,都需要在專案中配置好
三、常見問題
1. mvn clean install 和 mvn install 的區別
根據maven在執行一個生命周期命令時,理論上講,不做mvn install 得到的jar包應該是最新的,除非使用其他方式修改jar包的內容,但沒有修改源代碼
平時可以使用mvn install ,不使用clean會節省時間,但是最保險的方式還是mvn clean install,這樣可以生成最新的jar包或者其他包
2. maven兩種跳過單元測驗方法的區別
# 推薦
mvn package -Dmaven.test.skip=true
不但跳過了單元測驗的運行,同時也跳過了測驗代碼的編譯
mvn package -DskipTests
跳過單元測驗,但是會繼續編譯,如果沒時間修改單元測驗的bug,或者單元測驗編譯錯誤,則使用第一種,不要使用第二種
無論風雨,和自己一決勝負吧
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/472850.html
標籤:Java
