Maven經常使用命令:

Maven庫:java

http://repo2.maven.org/maven2/web

Maven依賴查詢:瀏覽器

http://mvnrepository.com/tomcat

一,Maven經常使用命令:

1. 建立Maven的普通Java項目:app

mvn archetype:create
    -DgroupId=packageName
    -DartifactId=projectName

2. 建立Maven的Web項目:eclipse

mvn archetype:create
    -DgroupId=packageName
    -DartifactId=webappName
    -DarchetypeArtifactId=maven-archetype-webapp

3. 反向生成 maven 項目的骨架:webapp

mvn archetype:generate

  你是怎麼建立你的maven項目的?是否是像這樣:maven

mvn archetype:create -DarchetypeArtifactId=maven-archetype-quickstart -DgroupId=com.ryanote -Dartifact=common

  若是你還再用的話,那你就out了,現代人都用mvn archetype:generate了,它將建立項目這件枯燥的事更加人性化,你不再須要記那麼多的archetypeArtifactId,你只需輸入archetype:generate,剩下的就是作」選擇題」了.ide

  cmd步驟:svn

  縮寫寫法:

mvn archetype:generate -DgroupId=otowa.user.dao -DartifactId=user-dao -Dversion=0.01-SNAPSHOT

4. 編譯源代碼:

mvn compile

5. 編譯測試代碼:

mvn test-compile

6. 運行測試:

mvn test

7. 產生site:

mvn site

8. 打包:

mvn package

9. 在本地Repository中安裝jar:

mvn install
例:installing D:\xxx\xx.jar to D:\xx\xxxx

10. 清除產生的項目:

mvn clean

11. 生成eclipse項目:

mvn eclipse:eclipse

12. 生成idea項目:

mvn idea:idea

13. 組合使用goal命令,如只打包不測試:

mvn -Dtest package

14. 編譯測試的內容:

mvn test-compile

15. 只打jar包:

mvn jar:jar

16. 只測試而不編譯,也不測試編譯:

mvn test -skipping compile -skipping test-compile
 ( -skipping 的靈活運用,固然也能夠用於其餘組合命令) 

17. 清除eclipse的一些系統設置:

mvn eclipse:clean 

18.查看當前項目已被解析的依賴:

mvn dependency:list

19.上傳到私服:

mvn deploy

20. 強制檢查更新,因爲快照版本的更新策略(一天更新幾回、隔段時間更新一次)存在,若是想強制更新就會用到此命令: 

mvn clean install-U

21. 源碼打包:

mvn source:jar
或
mvn source:jar-no-fork

mvn compile與mvn install、mvn deploy的區別

  1. mvn compile,編譯類文件
  2. mvn install,包含mvn compile,mvn package,而後上傳到本地倉庫
  3. mvn deploy,包含mvn install,而後,上傳到私服

二,PS:

  通常使用狀況是這樣,首先經過cvs或svn下載代碼到本機,而後執行mvn eclipse:eclipse生成ecllipse項目文件,而後導入到eclipse就好了;修改代碼後執行mvn compile或mvn test檢驗,也能夠下載eclipse的maven插件。

1. 顯示版本信息 :

mvn -version/-v

2. 建立mvn項目:

mvn archetype:create -DgroupId=com.oreilly -DartifactId=my-app

3. 生成target目錄,編譯、測試代碼,生成測試報告,生成jar/war文件 :

mvn package

4. 運行項目於jetty上:

mvn jetty:run

5. 顯示詳細錯誤 信息:

mvn -e

6. 驗證工程是否正確,全部須要的資源是否可用:

mvn validate

7. 在集成測試能夠運行的環境中處理和發佈包:

mvn integration-test

8. 運行任何檢查,驗證包是否有效且達到質量標準:

mvn verify

9. 產生應用須要的任何額外的源代碼,如xdoclet :

mvn generate-sources

10. 使用 help 插件的  describe 目標來輸出 Maven Help 插件的信息:

mvn help:describe -Dplugin=help

11. 使用Help 插件輸出完整的帶有參數的目標列 :

mvn help:describe -Dplugin=help -Dfull

12. 獲取單個目標的信息,設置  mojo 參數和  plugin 參數。此命令列出了Compiler 插件的compile 目標的全部信息 :

mvn help:describe -Dplugin=compiler -Dmojo=compile -Dfull

13. 列出全部 Maven Exec 插件可用的目標:

mvn help:describe -Dplugin=exec -Dfull

14. 看這個「有效的 (effective)」POM,它暴露了 Maven的默認設置 :

mvn help:effective-pom

15. 想要查看完整的依賴蹤影,包含那些由於衝突或者其它緣由而被拒絕引入的構件,打開 Maven 的調試標記運行 :

mvn install -X

16. 給任何目標添加maven.test.skip 屬性就能跳過測試 :

mvn install -Dmaven.test.skip=true

17. 構建裝配Maven Assembly 插件是一個用來建立你應用程序特有分發包的插件 :

mvn install assembly:assembly

18. 生成Wtp插件的Web項目 :

mvn -Dwtpversion=1.0 eclipse:eclipse

19. 清除Eclipse項目的配置信息(Web項目) :

mvn -Dwtpversion=1.0 eclipse:clean

20. 將項目轉化爲Eclipse項目 :

mvn eclipse:eclipse

21. mvn exec命令能夠執行項目中的main函數 :

首先須要編譯java工程:mvn compile
不存在參數的狀況下:mvn exec:java -Dexec.mainClass="***.Main"
存在參數:mvn exec:java -Dexec.mainClass="***.Main" -Dexec.args="arg0 arg1 arg2"
指定運行時庫:mvn exec:java -Dexec.mainClass="***.Main" -Dexec.classpathScope=runtime

22. 打印出已解決依賴的列表 :

mvn dependency:resolve

23. 打印整個依賴樹 :

mvn dependency:tree

在應用程序用使用多個存儲庫 

複製代碼
<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 help:describe

你是否由於記不清某個插件有哪些goal而痛苦過,你是否由於想不起某個goal有哪些參數而苦惱,那就試試這個命令吧,它會告訴你一切的.

參數: 1. -Dplugin=pluginName   2. -Dgoal(或-Dmojo)=goalName:與-Dplugin一塊兒使用,它會列出某個插件的goal信息,

若是嫌不夠詳細,一樣能夠加-Ddetail.(注:一個插件goal也被認爲是一個 「Mojo」)

下面你們就運行mvn help:describe -Dplugin=help -Dmojo=describe感覺一下吧!

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使改動生效.

mvnDebug tomcat:run

這條命令主要用來遠程測試,它會監聽遠程測試用的8000端口,在eclipse裏打開遠程測試後,它就會跑起來了,設斷點,調試,一切都是這麼簡單.上面提到的那幾個參數在這裏一樣適用.

mvn dependency:sources

故名思義,有了它,你就不用處處找源碼了,運行一下,你項目裏所依賴的jar包的源碼就都有了

相關文章
相關標籤/搜索