1. 程式人生 > >Maven 常用的命令

Maven 常用的命令

1. mvn help:describe

你是否因為記不清某個外掛有哪些goal而痛苦過,你是否因為想不起某個goal有哪些引數而苦惱,那就試試這個命令吧,它會告訴你一切的.

引數: 1. -Dplugin=pluginName   2. -Dgoal(或-Dmojo)=goalName:與-Dplugin一起使用,它會列出某個外掛的goal資訊,

如果嫌不夠詳細,同樣可以加-Ddetail.(注:一個外掛goal也被認為是一個 “Mojo”)

 下面大家就執行mvn help:describe -Dplugin=help -Dmojo=describe感受一下吧!

2. mvn archetype:generate

你是怎麼建立你的maven專案的?是不是像這樣:mvn archetype:create -DarchetypeArtifactId=maven-archetype-quickstart -DgroupId=com.ryanote -Dartifact=common,

如果你還再用的話,那你就out了,現代人都用mvn archetype:generate了,它將建立專案這件枯燥的事更加人性化,你再也不需要記那麼多的archetypeArtifactId,你只需輸入archetype:generate,剩下的就是做”選擇題”了.

3. mvn tomcat:run

用了maven後,你再也不需要用eclipse裡的tomcat來執行web專案(實際工作中經常會發現用它會出現不同步更新的情況),只需在對應目錄裡執行 mvn tomat:run命令,

然後就可在瀏覽器裡執行查看了.如果你想要更多的定製,可以在pom.xml檔案里加下面配置:

01 02 03 04 org.codehaus.mojo 05 tomcat-maven-plugin 06 07 /web 08 9090 09 10 11 12 當然你也可以在命令里加引數來實現特定的功能,

下面幾個比較常用:

1. 跳過測試:-Dmaven.test.skip(=true)

2. 指定埠:-Dmaven.tomcat.port=9090

3. 忽略測試失敗:-Dmaven.test.failure.ignore=true 當然,如果你的其它關聯專案有過更新的話,一定要在專案根目錄下執行mvn clean install來執行更新,再執行mvn tomcat:run使改動生效.

4. mvnDebug tomcat:run

這條命令主要用來遠端測試,它會監聽遠端測試用的8000埠,在eclipse裡開啟遠端測試後,它就會跑起來了,設斷點,除錯,一切都是這麼簡單.上面提到的那幾個引數在這裡同樣適用.

Maven常用命令:
1. 建立Maven的普通java專案:
   mvn archetype:create  -DgroupId=packageName  -DartifactId=projectName 
2. 建立Maven的Web專案:  
    mvn archetype:create -DgroupId=packageName   -DartifactId=webappName-DarchetypeArtifactId=maven-archetype-webapp   
3. 編譯原始碼: mvn compile
4. 編譯測試程式碼:mvn test-compile   
5. 執行測試:mvn test  
6. 產生site:mvn site  
7. 打包:mvn package  
8. 在本地Repository中安裝jar:mvn install
9. 清除產生的專案:mvn clean  
10. 生成eclipse專案:mvn eclipse:eclipse 
11. 生成idea專案:mvn idea:idea 
12. 組合使用goal命令,如只打包不測試:mvn -Dtest package  
13. 編譯測試的內容:mvn test-compile 
14. 只打jar包: mvn jar:jar 
15. 只測試而不編譯,也不測試編譯:mvn test -skipping compile -skipping test-compile
      ( -skipping 的靈活運用,當然也可以用於其他組合命令) 
16. 清除eclipse的一些系統設定:mvn eclipse:clean 

17.利用maven下載原始碼:mvn dependency:sources

18.生成站點目錄: mvn site

19.生成站點目錄併發布:mvn site-deploy 

20.安裝指定檔案到本地倉庫:mvn install:install-file -DgroupId=<groupId> -DartifactId=<artifactId> -Dversion=1.0.0 -Dpackaging=jar -Dfile=<myfile.jar>

21.檢視實際pom資訊: mvn help:effective-pom

22.跳過測試執行maven任務:    mvn -Dmaven.test.skip=true XXX
23.生成eclipse專案檔案: mvn eclipse:eclipse
24.檢視幫助資訊:mvn help:help 或 mvn help:help -Ddetail=true
25.檢視外掛的幫助資訊:mvn <plug-in>:help,比如:mvn dependency:help 或 mvn ant:help

ps:

一般使用情況是這樣,首先通過cvs或svn下載程式碼到本機,然後執行mvn eclipse:eclipse生成ecllipse專案檔案,然後匯入到eclipse就行了;修改程式碼後執行mvn compile或mvn test檢驗,也可以下載eclipse的maven外掛。

mvn -version/-v               顯示版本資訊
mvn archetype:generate        建立mvn專案
mvn archetype:create -DgroupId=com.oreilly -DartifactId=my-app   建立mvn專案

mvn package              生成target目錄,編譯、測試程式碼,生成測試報告,生成jar/war檔案
mvn jetty:run            執行專案於jetty上,
mvn compile              編譯
mvn test                 編譯並測試
mvn clean                清空生成的檔案
mvn site                 生成專案相關資訊的網站
mvn -Dwtpversion=1.0 eclipse:eclipse        生成Wtp外掛的Web專案
mvn -Dwtpversion=1.0 eclipse:clean          清除Eclipse專案的配置資訊(Web專案)
mvn eclipse:eclipse                         將專案轉化為Eclipse專案

在應用程式用使用多個儲存庫
<repositories>   
    <repository>     
        <id>Ibiblio</id>     
        <name>Ibiblio</name>     
        <url>http://www.ibiblio.org/maven/</url>   
    </repository>   
    <repository>     
        <id>PlanetMirror</id>     
        <name>Planet Mirror</name>     
        <url>http://public.planetmirror.com/pub/maven/</url>   
    </repository> 
</repositories>


mvn deploy:deploy-file -DgroupId=com -DartifactId=client -Dversion=0.1.0 -Dpackaging=jar -Dfile=d:\client-0.1.0.jar -DrepositoryId=maven-repository-inner -Durl=ftp://xxxxxxx/opt/maven/repository/


釋出第三方Jar到本地庫中:

mvn install:install-file -DgroupId=com -DartifactId=client -Dversion=0.1.0 -Dpackaging=jar -Dfile=d:\client-0.1.0.jar


-DdownloadSources=true

-DdownloadJavadocs=true

mvn -e              顯示詳細錯誤 資訊.
mvn validate        驗證工程是否正確,所有需要的資源是否可用。
mvn test-compile    編譯專案測試程式碼。 。
mvn integration-test     在整合測試可以執行的環境中處理和釋出包。
mvn verify               執行任何檢查,驗證包是否有效且達到質量標準。    
mvn generate-sources     產生應用需要的任何額外的原始碼,如xdoclet。