Maven常用命令及其作用、常見問題、常用命令使用場景舉例


一、Maven常用命令及其作用

1、 maven clean:對項目進行清理,刪除target目錄下編譯的內容

2、 maven compile:編譯項目源代碼

3、 maven test:對項目進行運行測試

4、 maven packet:打包文件並存放到項目的target目錄下,打包好的文件通常都是編譯后的class文件

5、 maven 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私服倉庫

3、mvn clean deploy依次執行了clean、resources、compile、testResources、testCompile、test、jar(打包)、install、deploy等9個階段

deploy命令完成了項目編譯、單元測試、打包功能,同時把打好的可執行jar包(war包或其它形式的包)布署到本地maven倉庫和遠程maven私服倉庫

三、常見問題

(一)mvn clean install 和 mvn install 的區別

1、根據maven在執行一個生命周期命令時,理論上講,不做mvn install 得到的jar包應該是最新的,除非使用其他方式修改jar包的內容,但沒有修改源代碼

2、平時可以使用mvn install ,不使用clean會節省時間,但是最保險的方式還是mvn clean install,這樣可以生成最新的jar包或者其他包

(二)maven兩種跳過單元測試方法的區別

1、 mvn package -Dmaven.test.skip=true

不但跳過了單元測試的運行,同時也跳過了測試代碼的編譯

2、 mvn package -DskipTests

跳過單元測試,但是會繼續編譯。如果沒時間修改單元測試的bug,或者單元測試編譯錯誤,則使用第一種,不要使用第二種


免責聲明!

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



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