Maven常用命令(轉(zhuǎn))

Maven庫(kù):

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

Maven依賴查詢:

http://mvnrepository.com/


一士葫,Maven常用命令:

1. 創(chuàng)建Maven的普通Java項(xiàng)目:

mvnarchetype:create

??? -DgroupId=packageName

??? -DartifactId=projectName

2. 創(chuàng)建MavenWeb項(xiàng)目:

mvnarchetype:create

??? -DgroupId=packageName

??? -DartifactId=webappName

???-DarchetypeArtifactId=maven-archetype-webapp

3. 反向生成maven 項(xiàng)目的骨架:

mvn?archetype:generate

  你是怎么創(chuàng)建你的maven項(xiàng)目的?是不是像這樣:

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

  如果你還再用的話,那你就out了,現(xiàn)代人都用mvn archetype:generate了,它將創(chuàng)建項(xiàng)目這件枯燥的事更加人性化,你再也不需要記那么多的archetypeArtifactId,你只需輸入archetype:generate,剩下的就是做”選擇題”了.

  cmd步驟:

?

?

縮寫寫法:

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

4. 編譯源代碼:

mvn?compile

5. 編譯測(cè)試代碼:

mvn?test-compile

6. 運(yùn)行測(cè)試:

mvn?test

7. 產(chǎn)生site

mvn?site

8. 打包:

mvn?package

9. 在本地Repository中安裝jar

mvninstall

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

10. 清除產(chǎn)生的項(xiàng)目:

mvn clean

11. 生成eclipse項(xiàng)目:

mvn?eclipse:eclipse

12. 生成idea項(xiàng)目:

mvn?idea:idea

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

mvn?-Dtest package

14. 編譯測(cè)試的內(nèi)容:

mvn?test-compile

15. 只打jar:

mvn?jar:jar

16. 只測(cè)試而不編譯旭旭,也不測(cè)試編譯:

mvntest -skipping compile -skipping test-compile

?( -skipping的靈活運(yùn)用,當(dāng)然也可以用于其他組合命令)

17. 清除eclipse的一些系統(tǒng)設(shè)置:

mvn?eclipse:clean?

18.查看當(dāng)前項(xiàng)目已被解析的依賴:

mvn?dependency:list

19.上傳到私服:

mvn?deploy

20.?強(qiáng)制檢查更新,由于快照版本的更新策略(一天更新幾次喻圃、隔段時(shí)間更新一次)存在,如果想強(qiáng)制更新就會(huì)用到此命令:?

mvn?clean install-U

21. 源碼打包:

mvnsource:jar

mvn source:jar-no-fork


mvn?compilemvn install粪滤、mvn deploy的區(qū)別:

????mvn compile斧拍,編譯類文件

????mvn install,包含mvn compile杖小,mvn package饮焦,然后上傳到本地倉(cāng)庫(kù)

????mvn deploy,包含mvn install,然后,上傳到私服


二窍侧,PS:

  一般使用情況是這樣县踢,首先通過cvs或svn下載代碼到本機(jī),然后執(zhí)行mvn eclipse:eclipse生成ecllipse項(xiàng)目文件伟件,然后導(dǎo)入到eclipse就行了硼啤;修改代碼后執(zhí)行mvn

compile或mvn test檢驗(yàn),也可以下載eclipse的maven插件斧账。

1.?顯示版本信息 :

mvn?-version/-v

2.?創(chuàng)建mvn項(xiàng)目:

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

3.?生成target目錄谴返,編譯、測(cè)試代碼咧织,生成測(cè)試報(bào)告嗓袱,生成jar/war文件 :

mvn?package

4.?運(yùn)行項(xiàng)目于jetty:

mvn?jetty:run

5.?顯示詳細(xì)錯(cuò)誤 信息:

mvn?-e

6.?驗(yàn)證工程是否正確,所有需要的資源是否可用:

mvn?validate

7.?在集成測(cè)試可以運(yùn)行的環(huán)境中處理和發(fā)布包:

mvn?integration-test

8.?運(yùn)行任何檢查习绢,驗(yàn)證包是否有效且達(dá)到質(zhì)量標(biāo)準(zhǔn):

mvn?verify

9.?產(chǎn)生應(yīng)用需要的任何額外的源代碼渠抹,如xdoclet :

mvn?generate-sources

10.?使用 help 插件的?describe 目標(biāo)來輸出 Maven Help 插件的信息:

mvn help:describe?-Dplugin=help

11.?使用Help 插件輸出完整的帶有參數(shù)的目標(biāo)列 :

mvn?help:describe -Dplugin=help -Dfull

12.?獲取單個(gè)目標(biāo)的信息,設(shè)置? mojo 參數(shù)和? plugin 參數(shù)。此命令列出了Compiler 插件的compile 目標(biāo)的所有信息 :

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

13.?列出所有 Maven Exec 插件可用的目標(biāo):

mvn?help:describe -Dplugin=exec -Dfull

14.?看這個(gè)有效的 (effective)”POM闪萄,它暴露了 Maven的默認(rèn)設(shè)置 :

mvn?help:effective-pom

15.?想要查看完整的依賴蹤跡梧却,包含那些因?yàn)闆_突或者其它原因而被拒絕引入的構(gòu)件,打開 Maven 的調(diào)試標(biāo)記運(yùn)行 :

mvn?install -X

16.?給任何目標(biāo)添加maven.test.skip 屬性就能跳過測(cè)試 :

mvn?install -Dmaven.test.skip=true

17.?構(gòu)建裝配Maven Assembly 插件是一個(gè)用來創(chuàng)建你應(yīng)用程序特有分發(fā)包的插件 :

mvn?install assembly:assembly

18. 生成Wtp插件的Web項(xiàng)目 :

mvn?-Dwtpversion=1.0 eclipse:eclipse

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

mvn?-Dwtpversion=1.0 eclipse:clean

20. 將項(xiàng)目轉(zhuǎn)化為Eclipse項(xiàng)目 :

mvn?eclipse:eclipse

21.?mvn?exec命令可以執(zhí)行項(xiàng)目中的main函數(shù) :

首先需要編譯java工程:mvn compile

不存在參數(shù)的情況下:mvn exec:java-Dexec.mainClass="***.Main"

存在參數(shù):mvn exec:java-Dexec.mainClass="***.Main" -Dexec.args="arg0 arg1 arg2"

指定運(yùn)行時(shí)庫(kù):mvn exec:java?-Dexec.mainClass="***.Main" -Dexec.classpathScope=runtime

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

mvn?dependency:resolve

23.?打印整個(gè)依賴樹 :

mvn?dependency:tree

在應(yīng)用程序用使用多個(gè)存儲(chǔ)庫(kù)?




三败去,附加

mvn?help:describe

你是否因?yàn)橛洸磺迥硞€(gè)插件有哪些goal而痛苦過,你是否因?yàn)橄氩黄鹉硞€(gè)goal有哪些參數(shù)而苦惱,那就試試這個(gè)命令吧,它會(huì)告訴你一切的.

參數(shù): 1. -Dplugin=pluginName?? 2. -Dgoal(或-Dmojo)=goalName:與-Dplugin一起使用,它會(huì)列出某個(gè)插件的goal信息,

如果嫌不夠詳細(xì),同樣可以加-Ddetail.(注:一個(gè)插件goal也被認(rèn)為是一個(gè) “Mojo”)

下面大家就運(yùn)行mvn help:describe -Dplugin=help?-Dmojo=describe感受一下吧!

mvn?tomcat:run

用了maven后,你再也不需要用eclipse里的tomcat來運(yùn)行web項(xiàng)目(實(shí)際工作中經(jīng)常會(huì)發(fā)現(xiàn)用它會(huì)出現(xiàn)不同步更新的情況),只需在對(duì)應(yīng)目錄里運(yùn)行 mvn tomat:run命令,然后就可在瀏覽器里運(yùn)行查看了.如果你想要更多的定制,可以在pom.xml文件里加下面配置:

01 02 03 04 org.codehaus.mojo 05?tomcat-maven-plugin 06 07 /web 08 9090 09 10 11 12 當(dāng)然你也可以在命令里加參數(shù)來實(shí)現(xiàn)特定的功能,

下面幾個(gè)比較常用:

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

  2>. 指定端口:-Dmaven.tomcat.port=9090

  3>. 忽略測(cè)試失敗:-Dmaven.test.failure.ignore=true 當(dāng)然,如果你的其它關(guān)聯(lián)項(xiàng)目有過更新的話,一定要在項(xiàng)目根目錄下運(yùn)行mvn clean install來執(zhí)行更新,再運(yùn)行mvn tomcat:run使改動(dòng)生效.

mvnDebug?tomcat:run

這條命令主要用來遠(yuǎn)程測(cè)試,它會(huì)監(jiān)聽遠(yuǎn)程測(cè)試用的8000端口,在eclipse里打開遠(yuǎn)程測(cè)試后,它就會(huì)跑起來了,設(shè)斷點(diǎn),調(diào)試,一切都是這么簡(jiǎn)單.上面提到的那幾個(gè)參數(shù)在這里同樣適用.

mvn?dependency:sources

故名思義,有了它,你就不用到處找源碼了,運(yùn)行一下,你項(xiàng)目里所依賴的jar包的源碼就都有了


s

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末放航,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子圆裕,更是在濱河造成了極大的恐慌广鳍,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,204評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件吓妆,死亡現(xiàn)場(chǎng)離奇詭異赊时,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)耿战,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,091評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門蛋叼,熙熙樓的掌柜王于貴愁眉苦臉地迎上來焊傅,“玉大人剂陡,你說我怎么就攤上這事狈涮。” “怎么了鸭栖?”我有些...
    開封第一講書人閱讀 164,548評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵歌馍,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我晕鹊,道長(zhǎng)松却,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,657評(píng)論 1 293
  • 正文 為了忘掉前任溅话,我火速辦了婚禮晓锻,結(jié)果婚禮上飞几,老公的妹妹穿的比我還像新娘砚哆。我一直安慰自己,他們只是感情好屑墨,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,689評(píng)論 6 392
  • 文/花漫 我一把揭開白布躁锁。 她就那樣靜靜地躺著,像睡著了一般卵史。 火紅的嫁衣襯著肌膚如雪战转。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,554評(píng)論 1 305
  • 那天以躯,我揣著相機(jī)與錄音槐秧,去河邊找鬼。 笑死忧设,一個(gè)胖子當(dāng)著我的面吹牛色鸳,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播见转,決...
    沈念sama閱讀 40,302評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼命雀,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了斩箫?” 一聲冷哼從身側(cè)響起鲁捏,我...
    開封第一講書人閱讀 39,216評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤杠览,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體迷扇,經(jīng)...
    沈念sama閱讀 45,661評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,851評(píng)論 3 336
  • 正文 我和宋清朗相戀三年狼电,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了贿衍。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,977評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖缀匕,靈堂內(nèi)的尸體忽然破棺而出纳决,到底是詐尸還是另有隱情,我是刑警寧澤乡小,帶...
    沈念sama閱讀 35,697評(píng)論 5 347
  • 正文 年R本政府宣布阔加,位于F島的核電站,受9級(jí)特大地震影響满钟,放射性物質(zhì)發(fā)生泄漏胜榔。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,306評(píng)論 3 330
  • 文/蒙蒙 一湃番、第九天 我趴在偏房一處隱蔽的房頂上張望夭织。 院中可真熱鬧,春花似錦吠撮、人聲如沸摔癣。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,898評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽择浊。三九已至,卻和暖如春逾条,著一層夾襖步出監(jiān)牢的瞬間琢岩,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,019評(píng)論 1 270
  • 我被黑心中介騙來泰國(guó)打工师脂, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留担孔,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,138評(píng)論 3 370
  • 正文 我出身青樓吃警,卻偏偏與公主長(zhǎng)得像糕篇,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子酌心,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,927評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容