Maven 瀹炴垬一

Maven 瀹炴垬1
Maven瀹炴垬锛堜竴锛夊畨瑁呭拰閰嶇疆

1. 绠€浠?/span>

聽 Maven鏄熀浜庨」鐩璞℃ā鍨?POM)锛屽彲浠ラ€氳繃涓€灏忔鎻忚堪淇℃伅鏉ョ鐞嗛」鐩殑鏋勫缓锛屾姤鍛婂拰鏂囨。鐨勮蒋浠堕」鐩鐞嗗伐鍏?
銆€ 濡傛灉浣犲凡缁忔湁鍗佹杈撳叆鍚屾牱鐨凙nt targets鏉ョ紪璇戜綘鐨勪唬鐮併€乯ar鎴栬€厀ar銆佺敓鎴恓avadocs锛屼綘涓€瀹氫細鑷棶锛屾槸鍚︽湁涓€涓噸澶嶆€ф洿灏戝嵈鑳藉悓鏍峰畬鎴愯宸ヤ綔鐨勬柟 娉曘€?Maven渚挎彁渚涗簡杩欐牱涓€绉嶉€夋嫨锛屽皢浣犵殑娉ㄦ剰鍔涗粠浣滀笟灞傝浆绉诲埌椤圭洰绠$悊灞傘€侻aven椤圭洰宸茬粡鑳藉鐭ラ亾濡備綍鏋勫缓鍜屾崋缁戜唬鐮侊紝杩愯娴嬭瘯锛岀敓鎴愭枃妗e苟瀹夸富椤圭洰 缃戦〉

2.鏍稿績浠峰€?/strong>

聽聽* 绠€鍗?/strong>聽
聽聽聽聽聽 Maven 鏆撮湶浜嗕竴缁勪竴鑷淬€佺畝浠嬬殑鎿嶄綔鎺ュ彛锛岃兘甯姪鍥㈤槦鎴愬憳浠庡師鏉ョ殑楂樺害鑷畾涔夌殑銆佸鏉傜殑鏋勫缓绯荤粺涓В鑴卞嚭鏉ワ紝浣跨敤Maven鐜版湁鐨勬垚鐔熺殑銆佺ǔ瀹氱殑缁勪欢涔熻兘绠€聽聽 鍖栨瀯寤虹郴缁熺殑澶嶆潅搴︺€?br>
聽聽* 浜ゆ祦涓庡弽棣?/strong>聽
聽聽聽聽聽 涓庣増鏈帶鍒剁郴缁熺粨鍚堝悗锛屽鏈変汉閮借兘鎵ц鏈€鏂扮殑鏋勫缓骞跺揩閫熷緱鍒板弽棣堛€傛澶栵紝鑷姩鐢熸垚鐨勯」鐩姤鍛婁篃鑳藉府鍔╂垚鍛樹簡瑙i」鐩殑鐘舵€侊紝淇冭繘鍥㈤槦鐨勪氦娴併€?br>
聽聽* 娴嬭瘯椹卞姩寮€鍙?/strong>聽
聽聽聽聽聽TDD寮鸿皟娴嬭瘯鍏堣锛屾墍鏈変骇鍝侀兘搴旇鐢辨祴璇曠敤渚嬭鐩栥€傝€屾祴璇曟槸maven鐢熷懡鍛ㄦ湡鐨勬渶閲嶈缁勬垚閮ㄥ垎涔嬩竴锛屽苟涓擬aven鏈夌幇鎴愮殑鎴愮啛鎻掍欢鏀寔涓氱晫娴佽鐨勬祴璇曟鏋讹紝濡侸unit鍜孴estNG銆?br>
聽聽* 蹇€熸瀯寤?/strong>
聽聽聽 鍙渶瑕佷竴浜涢厤缃紝涔嬪悗鐢ㄤ竴鏉$畝鍗曠殑鍛戒护灏辫兘璁㎝aven甯綘娓呯悊銆佺紪璇戙€佹祴璇曘€佹墦鍖呫€侀儴缃诧紝鐒跺悗寰楀埌鏈€缁堜骇鍝併€俒/size]

聽聽* 鎸佺画闆嗘垚
聽聽聽聽聽鏇村姞鏂逛究鐨勬寔缁泦鎴?br>
聽聽* 瀵屾湁淇℃伅鐨勫伐浣滃尯

2.涓昏鍐呭

聽聽 鎴戝皢浼氬彂琛ㄤ竴绯诲垪璇剧▼鏉ヨ瑙aven鐨勫簲鐢紝鍩轰簬Maven3.0锛屼富瑕佸唴瀹瑰涓嬶細

聽聽 1锛夊畨瑁呭拰閰嶇疆

聽聽 2锛塎aven浣跨敤鍏ラ棬

聽聽 3锛夊潗鏍囧拰渚濊禆

聽聽 4锛塎aven浠撳簱

聽聽 5)聽 鐢熷懡鍛ㄦ湡鍜屾彃浠?br>
聽聽 6锛夎仛鍚堜笌缁ф壙

聽聽 7锛変娇鐢∟exus鍒涘缓绉佹湇

聽聽 8锛変娇鐢∕aven杩涜娴嬭瘯

聽聽 9锛塵2eclipse鐨勪娇鐢?br>
聽聽 10锛夎嚜鍔ㄩ儴缃瞞aven椤圭洰

聽聽 11锛変娇鐢℉udson杩涜鎸佺画闆嗘垚


3. 瀹夎濂絁DK

聽聽聽 浠DK1.5浠ヤ笂涓轰緥


4. Maven 鐨勪笅杞?br>聽聽 涓嬭浇鍦板潃锛?a target="_blank" style="line-height: 1.42em; margin: 0px; color: #047ac6; border: 0px; padding: 0px;" href="http://maven.apache.org/download.html">http://maven.apache.org/download.html


5.Maven瀹夎

聽聽 灏嗕笅杞藉埌鐨勬枃浠惰В鍘嬪埌鎸囧畾鐩綍鍗冲彲锛屽锛欳:\maven\apache-maven-3.0.4


6.鐜鍙橀噺鐨勯厤缃?br>
聽聽聽 鍦ㄧ郴缁熺幆澧冨彉閲忎腑鏂板濡備笅鐜鍙橀噺聽
聽聽聽 M2_HOME:聽 Maven鐨勫畨瑁呯洰褰曪紝濡傦細C:\maven\apache-maven-3.0.4聽
聽聽聽 M2:聽 %M2_HOME%\bin聽
聽聽聽骞跺湪path涓坊鍔?M2%锛岃繖鏍蜂究鍙互鍦ㄤ换浣曡矾寰勪腑鎵цmvn鍛戒护

7. 妫€娴嬪畨瑁呮槸鍚︽垚鍔?br>
聽聽聽 Cmd绐楀彛鎵ц鍛戒护锛歮vn 鈥搗聽
聽聽聽 寰楀埌濡備笅鍥炬墍绀虹粨鏋滐細
Maven 瀹炴垬一
聽聽聽

聽8.璁剧疆浠g悊

鏈夋椂鍊欎綘鎵€鍦ㄧ殑鍏徃鍩轰簬瀹夊叏鍥犵礌鑰冭檻锛岃姹備綘浣跨敤閫氳繃瀹夊叏璁よ瘉鐨勪唬鐞嗚闂洜鐗圭綉銆傝繖鏃跺氨闇€瑕佷负Maven閰嶇疆HTTP浠g悊銆?/span>

聽聽 鍦ㄧ洰褰晘/.m2/setting.xml鏂囦欢涓紪杈戝涓嬶紙濡傛灉娌℃湁璇ユ枃浠讹紝鍒欏鍒?M2_HOME/conf/setting.xml锛夛細

Xml浠g爜 聽Maven 瀹炴垬一
  1. <proxies>聽聽
  2. 聽聽聽聽<proxy>聽聽
  3. 聽聽聽聽聽聽<id>optional</id>聽聽
  4. 聽聽聽聽聽聽<active>true</active>聽聽
  5. 聽聽聽聽聽聽<protocol>http</protocol>聽聽
  6. 聽聽聽聽聽聽<username>proxyuser</username>聽聽
  7. 聽聽聽聽聽聽<password>proxypass</password>聽聽
  8. 聽聽聽聽聽聽<host>proxy.host.net</host>聽聽
  9. 聽聽聽聽聽聽<port>80</port>聽聽
  10. 聽聽聽聽聽聽<nonProxyHosts>local.net|some.host.com</nonProxyHosts>聽聽
  11. 聽聽聽聽</proxy>聽聽聽聽聽聽
  12. 聽</proxies>聽聽
Maven瀹炴垬锛堜簩锛夋瀯寤虹畝鍗昅aven椤圭洰

涓婁竴鑺傝浜唌aven鐨勫畨瑁呭拰閰嶇疆锛岃繖涓€鑺傛垜浠潵瀛︿範涓€涓嬪垱寤轰竴涓畝鍗曠殑Maven椤圭洰

1. 鐢∕aven 鍛戒护鍒涘缓涓€涓畝鍗曠殑Maven椤圭洰

鍦╟md涓繍琛屽涓嬪懡浠わ細

Cmd浠g爜 聽Maven 瀹炴垬一
  1. mvn聽archetype:generate聽聽聽
  2. -DgroupId=com.mycompany.app聽聽聽
  3. -DartifactId=my-app-simple聽聽
  4. 聽-Dversion=1.0聽聽聽
  5. -DarchetypeArtifactId=maven-archetype-quickstart聽聽

聽鍗冲彲鍦ㄥ綋鍓嶇洰褰曞垱寤轰竴涓畝鍗曠殑maven椤圭洰锛屽綋鐒跺垱寤虹殑鏃跺€欎細浠嶮aven搴撲腑涓嬭浇鐩稿叧鐨勪緷璧栵紝鑰愬績绛夊緟鍗冲彲銆?/p>

maven鐨勫ぇ鑷寸粨鏋勫涓嬶細

Java浠g爜 聽Maven 瀹炴垬一
  1. my-app聽聽
  2. |--聽pom.xml聽聽
  3. `--聽src聽聽
  4. 聽聽聽聽|--聽main聽聽
  5. 聽聽聽聽|聽聽聽|--聽java聽聽
  6. 聽聽聽聽|聽聽聽|聽聽聽`--聽com聽聽
  7. 聽聽聽聽|聽聽聽|聽聽聽聽聽聽聽`--聽mycompany聽聽
  8. 聽聽聽聽|聽聽聽|聽聽聽聽聽聽聽聽聽聽聽`--聽app聽聽
  9. 聽聽聽聽|聽聽聽|聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽`--聽App.java聽聽
  10. 聽聽聽聽|聽聽聽`--聽resources聽聽
  11. 聽聽聽聽|聽聽聽聽聽聽聽`--聽META-INF聽聽
  12. 聽聽聽聽|聽聽聽聽聽聽聽聽聽聽聽`--聽application.properties聽聽
  13. 聽聽聽聽`--聽test聽聽
  14. 聽聽聽聽聽聽聽聽`--聽java聽聽
  15. 聽聽聽聽聽聽聽聽聽聽聽聽`--聽com聽聽
  16. 聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽`--聽mycompany聽聽
  17. 聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽`--聽app聽聽
  18. 聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽`--聽AppTest.java聽聽

聽聽 src/main/java聽: java婧愭枃浠跺瓨鏀句綅缃?/p>

聽聽 src/main/resource : resource璧勬簮锛屽閰嶇疆鏂囦欢绛?/p>

聽聽 src/test/java : 娴嬭瘯浠g爜婧愭枃浠跺瓨鏀句綅缃?/p>

2.绠€鍗昉OM.xml

聽鎵撳紑椤圭洰鍗冲彲鐪嬪埌pom.xml

Xml浠g爜 聽Maven 瀹炴垬一
  1. <project聽xmlns="http://maven.apache.org/POM/4.0.0"聽xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"聽聽
  2. 聽聽xsi:schemaLocation="http://maven.apache.org/POM/4.0.0聽http://maven.apache.org/maven-v4_0_0.xsd">聽聽
  3. 聽聽<modelVersion>4.0.0</modelVersion>聽聽
  4. 聽聽<groupId>com.mycompany.app</groupId>聽聽
  5. 聽聽<artifactId>my-app-simple</artifactId>聽聽
  6. 聽聽<packaging>jar</packaging>聽聽
  7. 聽聽<version>1.0</version>聽聽
  8. 聽聽<name>my-app-simple</name>聽聽
  9. 聽聽<url>http://maven.apache.org</url>聽聽
  10. 聽聽<dependencies>聽聽
  11. 聽聽聽聽<dependency>聽聽
  12. 聽聽聽聽聽聽<groupId>junit</groupId>聽聽
  13. 聽聽聽聽聽聽<artifactId>junit</artifactId>聽聽
  14. 聽聽聽聽聽聽<version>3.8.1</version>聽聽
  15. 聽聽聽聽聽聽<scope>test</scope>聽聽
  16. 聽聽聽聽</dependency>聽聽
  17. 聽聽</dependencies>聽聽
  18. </project>聽聽

聽杩欐浠g爜涓渶閲嶈鐨勬槸鍖呭惈groupId, artifactId 鍜?version 鐨勪笁琛屻€傝繖涓変釜鍏冪礌瀹氫箟浜嗕竴涓」鐩熀鏈殑鍧愭爣

groupId瀹氫箟浜嗛」鐩睘浜庡摢涓粍锛岃繖涓粍寰€寰€鍜岄」鐩墍鍦ㄧ殑缁勭粐鎴栧叕鍙稿瓨鍦ㄥ叧鑱斻€傝濡傚湪googlecode涓婂缓绔嬩簡涓€涓悕涓簃yapp鐨勯」鐩紝閭d箞groupId灏卞簲璇ユ槸com.googlecode.myapp

artifactId瀹氫箟浜嗗綋鍓峂aven椤圭洰鍦ㄧ粍缁囦腑鍞竴鐨処D, 鍙互鐞嗚В涓洪」鐩腑鐨勬ā鍧? 妯″潡涓篗aven涓渶灏忓崟浣嶆瀯浠?/p>

version椤圭洰鐨勭増鏈?/p>

聽聽聽

3.杩愯绠€鍗昅aven鍛戒护

聽鎴戜滑宸茬粡鍒涘缓浜嗘渶绠€鍗曠殑Maven椤圭洰锛屼笅闈㈡垜浠潵鎵ц涓€浜涚畝鍗曠殑鏋勫缓鍛戒护

聽 缂栬瘧锛?compile

鍦╟md涓紝灏嗙洰褰曞垏鎹㈠埌my-app-simple涓嬶紝鎵цmvn clean compile

build success涔嬪悗鎴戜滑浼氬湪my-app-simple涓嬬湅鍒版柊澧炰簡涓€涓猼arget鐩綍锛岃鐩綍涓嬪瓨鏀鹃」鐩紪璇戝悗鐨勬枃浠讹紝濡?class鏂囦欢

聽 娓呯悊锛毬燾lean

cmd鐩綍my-app-simple涓嬫墽琛屽懡浠?mvn clean

浼氬皢target鏂囦欢鍒犻櫎锛屽嵆娓呯悊椤圭洰锛岃鍛戒护鍙互缁撳悎鍏朵粬鍛戒护杩愯

聽 娴嬭瘯: test

cmd鐩綍my-app-simple涓嬫墽琛屽懡浠?mvn test

浼氭墽琛宻rc/test/java 涓嬬殑Junit 娴嬭瘯浠g爜

褰撶劧鍦ㄦ墽琛屾祴璇曚箣鍓嶄細鑷姩鎵ц缂栬瘧鍛戒护锛岃繍琛岀粨鏋滃涓嬪浘锛?/p>


Maven 瀹炴垬一

鎵撳寘: package

聽cmd鐩綍my-app-simple涓嬫墽琛屽懡浠?mvn package

聽浼氬皢椤圭洰鎵撴垚jar鍖咃紝骞舵斁鍦╰arget鐩綍涓?/p>

聽鎵ц姝ゅ懡浠や箣鍓嶄細鍏堟墽琛岀紪璇戝拰娴嬭瘯鍛戒护

瀹夎锛歩nstall聽

聽cmd鐩綍my-app-simple涓嬫墽琛屽懡浠?mvn install

聽浼氬皢椤圭洰jar鍖呭畨瑁呭埌鏈湴浠撳簱涓紝浠ヤ究鍏朵粬椤圭洰浣跨敤

鎵ц姝ゅ懡浠や箣鍓嶄細鍏堟墽琛岀紪璇戯紝娴嬭瘯锛屾墦鍖呭懡浠ぢ?/p>

锛堜笁锛塃clipse鏋勫缓Maven椤圭洰

1. 瀹夎m2eclipse鎻掍欢
聽聽 瑕佺敤Eclipse鏋勫缓Maven椤圭洰锛屾垜浠渶瑕佸厛瀹夎meeclipse鎻掍欢
聽聽 鐐瑰嚮eclipse鑿滃崟鏍廐elp->Eclipse Marketplace鎼滅储鍒版彃浠禡aven Integration for Eclipse 骞剁偣鍑诲畨瑁呭嵆鍙紝濡備笅鍥撅細


Maven 瀹炴垬一

瀹夎鎴愭垚涔嬪悗鎴戜滑鍦‥clipse鑿滃崟鏍忎腑鐐瑰嚮File->New->Other,鍦ㄥ脊鍑虹殑瀵硅瘽妗嗕腑浼氱湅鍒板涓嬪浘鎵€绀猴細


Maven 瀹炴垬一

2.聽鏋勫缓Maven椤圭洰聽聽

聽聽聽聽聽

聽聽聽聽聽聽浠clipse3.6涓轰緥

聽聽聽聽聽 1锛夊垱寤虹畝鍗昅aven椤圭洰

聽聽聽聽聽聽聽聽聽聽 鐐瑰嚮Eclipse鑿滃崟鏍廎ile->New->Ohter->Maven寰楀埌濡備笅鍥炬墍绀哄璇濇锛?/p>

聽聽聽聽聽聽聽聽聽聽
Maven 瀹炴垬一

閫変腑Maven Project骞剁偣鍑籒ext锛屽埌涓嬩竴涓璇濇缁х画鐐瑰嚮Next寰楀埌濡備笅瀵硅瘽妗?/p>


Maven 瀹炴垬一
聽濡傚浘绀烘搷浣滐紝閫夋嫨maven-archetype-quickstart锛岀偣鍑籒ext


Maven 瀹炴垬一
聽鎸夊浘绀哄~鍐欏ソgroupId, artfactId,version绛変俊鎭紝鐐瑰嚮Finish銆?/p>

鐢辨鎴戜滑鎴愬姛鍒涘缓浜嗕竴涓畝鍗曠殑Maven椤圭洰锛岄」鐩粨鏋勫鍥炬墍绀?/p>


Maven 瀹炴垬一

聽聽聽聽 2锛夊垱寤篗aven web椤圭洰

聽聽聽聽 鎿嶄綔璺熷垱寤虹畝鍗昅aven椤圭洰绫讳技锛岀偣鍑籈clipse鑿滃崟File->New->Other->Maven->Maven Project

聽聽聽聽 鍦ㄩ€夋嫨maven-archetype鐨勭晫闈㈣繘琛屽涓嬫搷浣滐細

聽聽聽聽
Maven 瀹炴垬一
聽鐐瑰嚮Next,濉啓濂界浉搴旂殑groupId,artifactId,version绛変俊鎭紝鐐瑰嚮Finish

寰楀埌鐨凪aven web椤圭洰缁撴瀯濡備笅鍥炬墍绀猴細


Maven 瀹炴垬一

聽鍙冲嚮椤圭洰锛岀偣鍑籔roperties->Project Facets


Maven 瀹炴垬一

濡備笂鍥惧彲浠ョ湅鍒伴」鐩负web2.3 java1.5 褰撶劧鎴戜滑涔熷彲浠ユ敼鎴愭垜浠墍闇€瑕佺殑鐗堟湰锛屾墦寮€xml鏂囦欢my-app-web/.settings/org.eclipse.wst.common.project.facet.core.xml锛岃繘琛屼慨鏀瑰嵆鍙細

Xml浠g爜 聽Maven 瀹炴垬一
  1. <?xml聽version="1.0"聽encoding="UTF-8"?>聽聽
  2. <faceted-project>聽聽
  3. 聽聽<fixed聽facet="wst.jsdt.web"/>聽聽
  4. 聽聽<installed聽facet="java"聽version="1.5"/>聽聽
  5. 聽聽<installed聽facet="jst.web"聽version="2.3"/>聽聽
  6. 聽聽<installed聽facet="wst.jsdt.web"聽version="1.0"/>聽聽
  7. </faceted-project>聽聽

聽聽聽聽 3锛夊鍏aven椤圭洰

聽聽聽聽聽聽聽聽聽 鍦‥clipse project explorer涓彸鍑伙紝鍦ㄥ脊鍑烘涓€夋嫨import锛屽緱鍒板涓嬪浘鎵€绀猴細聽聽聽聽聽聽聽聽聽
Maven 瀹炴垬一

聽聽聽聽聽 閫夋嫨Existing Maven Projects锛屽苟鐐瑰嚮Next锛屽緱鍒板涓嬪浘鎵€绀哄璇濇锛?/p>

聽聽聽聽
Maven 瀹炴垬一

閫夋嫨涓€涓凡缁忓垱寤哄ソ鐨凪aven椤圭洰锛屽苟鐐瑰嚮Finish銆?/p>

鐢辨锛屽鍏aven椤圭洰鎴愬姛

聽聽聽聽

3.聽杩愯Maven鍛戒护

聽聽聽聽聽

聽聽聽 鍙冲嚮椤圭洰锛岀偣鍑籖un as锛屽涓嬪浘锛?/p>


Maven 瀹炴垬一

聽鍗冲彲鐪嬪埌鏈夊緢澶氱幇鏈夌殑maven鍛戒护锛岀偣鍑诲嵆鍙繍琛岋紝骞跺湪鎺у埗鍙板彲浠ョ湅鍒拌繍琛屼俊鎭?/p>

聽濡傛灉浣犳兂杩愯鐨刴aven鍛戒护鍦ㄨ繖閲屾病鏈夋壘鍒帮紝鐐瑰嚮Maven build鍒涘缓鏂扮殑鍛戒护锛屾搷浣滃涓嬪浘鎵€绀猴細


Maven 瀹炴垬一

聽濡備笅鍥惧~鍏aven鍛戒护锛岀偣鍑籖un鍗冲彲


Maven 瀹炴垬一

鏂板鐨刴aven鍛戒护鍙互閫氳繃濡備笅鏂瑰紡鎵惧埌锛屽苟鍐嶆杩愯锛?/p>


Maven 瀹炴垬一


Maven 瀹炴垬一
Maven瀹炴垬锛堝洓锛夌敓鍛藉懆鏈?/strong>

1. 涓夊鐢熷懡鍛ㄦ湡
聽聽聽 Maven鎷ユ湁涓夊鐩镐簰鐙珛鐨勭敓鍛藉懆鏈燂紝瀹冧滑鍒嗗埆涓篶lean锛宒efault鍜宻ite銆?br>姣忎釜鐢熷懡鍛ㄦ湡鍖呭惈涓€浜涢樁娈碉紝杩欎簺闃舵鏄湁椤哄簭鐨勶紝骞朵笖鍚庨潰鐨勯樁娈典緷璧栦簬鍓嶉潰鐨勯樁娈碉紝鐢ㄦ埛鍜孧aven鏈€鐩存帴鐨勪氦浜掓柟寮忓氨鏄皟鐢ㄨ繖浜涚敓鍛藉懆鏈熼樁娈点€?br>浠?clean鐢熷懡鍛ㄦ湡涓轰緥锛屽畠鍖呭惈鐨勯樁娈垫湁pre-clean, clean 鍜?post clean銆傚綋鐢ㄦ埛璋冪敤pre-clean鐨勬椂鍊欙紝鍙湁pre-clean寰椾互鎵ц锛屽綋鐢ㄦ埛璋冪敤clean鐨勬椂鍊欙紝pre-clean鍜宑lean闃舵浼?寰椾互椤哄簭鎵ц锛涘綋鐢ㄦ埛璋冪敤post-clean鐨勬椂鍊欙紝pre-clean,clean,post-clean浼氬緱浠ラ『搴忔墽琛屻€?br>
杈冧箣浜庣敓鍛藉懆鏈熼樁娈电殑鍓嶅悗渚濊禆鍏崇郴锛屼笁濂楃敓鍛藉懆鏈熸湰韬槸鐩镐簰鐙珛鐨勶紝鐢ㄦ埛鍙互浠呬粎璋冪敤clean鐢熷懡鍛ㄦ湡鐨勬煇涓樁娈碉紝鎴栬€呬粎浠呰皟鐢╠efault鐢熷懡鍛ㄦ湡鐨勬煇涓樁娈碉紝鑰屼笉浼氬鍏朵粬鐢熷懡鍛ㄦ湡浜х敓浠讳綍褰卞搷銆?br>
2. clean 鐢熷懡鍛ㄦ湡

聽聽聽聽聽 clean鐢熷懡鍛ㄦ湡鐨勭洰鐨勬槸娓呯悊椤圭洰锛屽畠鍖呭惈涓変釜闃舵锛?/p>

聽聽聽聽 1锛?strong style="line-height: 1.42em;">pre-clean鎵ц涓€浜涙竻鐞嗗墠闇€瑕佸畬鎴愮殑宸ヤ綔銆?/p>

聽聽聽聽 2锛?strong style="line-height: 1.42em;">clean娓呯悊涓婁竴娆℃瀯寤虹敓鎴愮殑鏂囦欢銆?/p>

聽聽聽聽 3锛?strong style="line-height: 1.42em;">post-clean鎵ц涓€浜涙竻鐞嗗悗闇€瑕佸畬鎴愮殑宸ヤ綔銆?/p>

3.聽default 鐢熷懡鍛ㄦ湡

聽聽聽聽聽聽 default鐢熷懡鍛ㄦ湡瀹氫箟浜嗙湡姝f瀯浠舵椂鎵€闇€瑕佹墽琛岀殑鎵€鏈夋楠わ紝瀹冩槸鐢熷懡鍛ㄦ湡涓渶鏍稿績鐨勯儴鍒嗭紝瀹冨寘鍚殑闃舵濡備笅锛?/p>

聽聽聽聽聽聽 1锛?span class="Apple-converted-space">聽validate楠岃瘉椤圭洰鏄惁姝g‘鍜屾墍鏈夐渶瑕佺殑鐩稿叧璧勬簮鏄惁鍙敤

聽聽聽聽聽聽 2锛?span class="Apple-converted-space">聽initialize鍒濆鍖栨瀯寤?/p>

聽聽聽聽聽聽 3锛?span class="Apple-converted-space">聽generate-sources

聽聽聽聽聽聽 4)聽聽聽process-sources澶勭悊婧愪唬鐮?/p>

聽聽聽聽聽聽 5锛?span class="Apple-converted-space">聽generate-resources聽

聽聽聽聽聽聽 6)聽聽process-resources澶勭悊椤圭洰涓昏祫婧愭枃浠躲€傚src/main/resources鐩綍鐨勫唴瀹硅繘琛屽彉閲忔浛鎹㈢瓑宸ヤ綔鍚庯紝澶嶅埗鍒伴」鐩緭鍑虹殑涓籧lasspath鐩綍涓€?/p>

聽聽聽聽聽聽 7锛?span class="Apple-converted-space">聽compile缂栬瘧椤圭洰鐨勪富婧愪唬鐮?/p>

聽聽聽聽聽聽 8锛?span class="Apple-converted-space">聽process-classes

聽聽聽聽聽聽 9)聽聽generate-test-sources

聽聽聽聽聽聽 10)process-test-sources澶勭悊椤圭洰娴嬭瘯璧勬簮鏂囦欢

聽聽聽聽聽聽聽11锛?strong style="line-height: 1.42em;">generate-test-resources

聽聽聽聽聽聽聽12)聽process-test-resources澶勭悊娴嬭瘯鐨勮祫婧愭枃浠?/p>

聽聽聽聽聽聽 13锛?strong style="line-height: 1.42em;">test-compile缂栬瘧椤圭洰鐨勬祴璇曚唬鐮?/p>

聽聽聽聽聽聽 14锛?strong style="line-height: 1.42em;">process-test-classes

聽聽聽聽聽聽 15)聽test浣跨敤鍗曞厓娴嬭瘯妗嗘灦杩愯娴嬭瘯锛屾祴璇曚唬鐮佷笉浼氳鎵撳寘鎴栭儴缃?/p>

聽聽聽聽聽聽 16锛?strong style="line-height: 1.42em;">prepare-package鍋氬ソ鎵撳寘鐨勫噯澶?/p>

聽聽聽聽聽聽聽17锛?strong style="line-height: 1.42em;">package鎺ュ彈缂栬瘧濂界殑浠g爜锛屾墦鍖呮垚鍙彂甯冪殑鏍煎紡

聽聽聽聽聽聽 18)聽pre-integration-test

聽聽聽聽聽聽聽19)聽integration-test

聽聽聽聽聽聽聽20)聽post integration-test

聽聽聽聽聽聽 21)聽verify

聽聽聽聽聽聽 22)聽install灏嗗寘瀹夎鍒癕aven鏈湴浠撳簱锛屼緵鏈湴鍏朵粬Maven椤圭洰浣跨敤

聽聽聽聽聽聽 23锛?strong style="line-height: 1.42em;">deploy灏嗘渶缁堢殑鍖呭鍒跺埌杩滅▼浠撳簱锛屼緵鍏朵粬寮€鍙戜汉鍛樺拰Maven椤圭洰浣跨敤

聽聽聽聽聽聽聽

4.聽site 鐢熷懡鍛ㄦ湡

聽聽聽聽聽 site鐢熷懡鍛ㄦ湡鐨勭洰鐨勬槸寤虹珛鍜屽彂甯冮」鐩珯鐐癸紝Maven鑳藉鍩轰簬POM鎵€鍖呭惈鐨勪俊鎭紝鑷姩鐢熸垚涓€涓弸濂界殑绔欑偣锛屾柟渚垮洟闃熶氦娴佸拰鍙戝竷椤圭洰淇℃伅銆傝鐢熷懡鍛ㄦ湡鍖呭惈濡備笅闃舵锛?/p>

聽聽聽聽聽 1锛?strong style="line-height: 1.42em;">pre-site鎵ц涓€浜涘湪鐢熸垚椤圭洰绔欑偣涔嬪墠闇€瑕佸畬鎴愮殑宸ヤ綔

聽聽聽聽聽 2锛?strong style="line-height: 1.42em;">site鐢熸垚椤圭洰绔欑偣鏂囨。

聽聽聽聽聽 3锛?strong style="line-height: 1.42em;">post-site鎵ц涓€浜涘湪鐢熸垚椤圭洰绔欑偣涔嬪悗闇€瑕佸畬鎴愮殑宸ヤ綔

聽聽聽聽聽 4锛?strong style="line-height: 1.42em;">site-deploy灏嗙敓鎴愮殑椤圭洰绔欑偣鍙戝竷鍒版湇鍔″櫒涓?/div>
Maven瀹炴垬锛堜簲锛夊潗鏍囪瑙?/strong>

1.涓轰粈涔堣瀹氫箟Maven鍧愭爣
聽聽聽聽 鍦ㄦ垜浠紑鍙慚aven椤圭洰鐨勬椂鍊欙紝闇€瑕佷负鍏跺畾涔夐€傚綋鐨勫潗鏍囷紝杩欐槸Maven寮哄埗瑕佹眰鐨勩€傚湪杩欎釜鍩虹涓婏紝鍏朵粬Maven椤圭洰鎵嶈兘搴旂敤璇ラ」鐩敓鎴愮殑鏋勪欢銆?br>
2.Maven鍧愭爣璇﹁В

聽聽聽聽 Maven鍧愭爣涓哄悇绉嶆瀯浠跺紩鍏ヤ簡绉╁簭锛屼换浣曚竴涓瀯浠堕兘蹇呴』鏄庣‘瀹氫箟鑷繁鐨勫潗鏍囷紝鑰屼竴缁凪aven鍧愭爣鏄€氳繃涓€浜涘厓绱犲畾涔夌殑锛屽畠浠槸groupId,artifactId,version,packaging,class-sifer銆備笅闈㈡槸涓€缁勫潗鏍囧畾涔夛細

聽聽

Xml浠g爜 聽Maven 瀹炴垬一
  1. <groupId>com.mycompany.app</groupId>聽聽
  2. 聽聽<artifactId>my-app</artifactId>聽聽
  3. 聽聽<packaging>jar</packaging>聽聽
  4. 聽<version>0.0.1-SNAPSHOT</version>聽聽

聽涓嬮潰璁茶В涓€涓嬪悇涓潗鏍囧厓绱狅細

groupId聽锛氬畾涔夊綋鍓峂aven椤圭洰闅跺睘鐨勫疄闄呴」鐩€傞鍏堬紝Maven椤圭洰鍜屽疄闄呴」鐩笉涓€瀹氭槸涓€瀵逛竴鐨勫叧 绯汇€傛瘮濡係pringFrameWork杩欎竴瀹為檯椤圭洰锛屽叾瀵瑰簲鐨凪aven椤圭洰浼氭湁寰堝锛屽spring-core,spring-context绛夈€傝繖 鏄敱浜嶮aven涓ā鍧楃殑姒傚康锛屽洜姝わ紝涓€涓疄闄呴」鐩線寰€浼氳鍒掑垎鎴愬緢澶氭ā鍧椼€傚叾娆★紝groupId涓嶅簲璇ュ搴旈」鐩毝灞炵殑缁勭粐鎴栧叕鍙搞€傚師鍥犲緢绠€鍗曪紝涓€涓粍缁?涓嬩細鏈夊緢澶氬疄闄呴」鐩紝濡傛灉groupId鍙畾涔夊埌缁勭粐绾у埆锛岃€屽悗闈㈡垜浠細鐪嬪埌锛宎rtifactId鍙兘瀹氫箟Maven椤圭洰锛堟ā鍧楋級锛岄偅涔堝疄闄呴」鐩繖涓眰 娆″皢闅句互瀹氫箟銆傛渶鍚庯紝groupId鐨勮〃绀烘柟寮忎笌Java鍖呭悕鐨勮〃杈炬柟寮忕被浼硷紝閫氬父涓庡煙鍚嶅弽鍚戜竴涓€瀵瑰簲銆?/p>

artifactId: 璇ュ厓绱犲畾涔夊綋鍓嶅疄闄呴」鐩腑鐨勪竴涓狹aven椤圭洰锛堟ā鍧楋級锛屾帹鑽愮殑鍋氭硶鏄娇鐢ㄥ疄闄呴」鐩悕绉颁綔涓篴rtifactId鐨勫墠缂€銆傛瘮濡備笂渚嬩腑鐨刴y-app銆?/p>

version: 璇ュ厓绱犲畾涔塎aven椤圭洰褰撳墠鐨勭増鏈?/p>

packaging锛氬畾涔塎aven椤圭洰鎵撳寘鐨勬柟寮忥紝棣栧厛锛屾墦鍖呮柟寮忛€氬父涓庢墍鐢熸垚鏋勪欢鐨勬枃浠舵墿灞曞悕瀵瑰簲锛屽涓婁緥涓殑packaging涓簀ar,鏈€缁堢殑鏂囦欢鍚嶄负my- app-0.0.1-SNAPSHOT.jar銆備篃鍙互鎵撳寘鎴恮ar, ear绛夈€傚綋涓嶅畾涔塸ackaging鐨勬椂鍊欙紝Maven 浼氫娇鐢ㄩ粯璁ゅ€糺ar

classifier: 璇ュ厓绱犵敤鏉ュ府鍔╁畾涔夋瀯寤鸿緭鍑虹殑涓€浜涢檮浠躲€傞檮灞炴瀯浠朵笌涓绘瀯浠跺搴旓紝濡備笂渚嬩腑鐨勪富鏋勪欢涓簃y-app-0.0.1-SNAPSHOT.jar,璇ラ」鐩彲鑳借繕浼?閫氳繃涓€浜涙彃浠剁敓鎴愬my-app-0.0.1-SNAPSHOT-javadoc.jar,my-app-0.0.1-SNAPSHOT- sources.jar,聽杩欐牱闄勫睘鏋勪欢涔熷氨鎷ユ湁浜嗚嚜宸卞敮涓€鐨勫潗鏍?/div>
Maven瀹炴垬锛堝叚锛変緷璧?/strong>

鎴戜滑椤圭洰涓敤鍒扮殑jar鍖呭彲浠ラ€氳繃渚濊禆鐨勬柟寮忓紩鍏ワ紝鏋勫缓椤圭洰鐨勬椂鍊欎粠Maven浠撳簱涓嬭浇鍗冲彲銆?/span>

1. 渚濊禆閰嶇疆
聽聽 渚濊禆鍙互澹版槑濡備笅锛毬?br>聽聽

Xml浠g爜 聽Maven 瀹炴垬一
  1. <project>聽聽
  2. 聽聽...聽聽
  3. 聽聽<dependencies>聽聽
  4. 聽聽聽聽<dependency>聽聽
  5. 聽聽聽聽聽聽<groupId>group-a</groupId>聽聽
  6. 聽聽聽聽聽聽<artifactId>artifact-a</artifactId>聽聽
  7. 聽聽聽聽聽聽<version>1.0</version>聽聽
  8. 聽聽聽聽聽聽<exclusions>聽聽
  9. 聽聽聽聽聽聽聽聽<exclusion>聽聽
  10. 聽聽聽聽聽聽聽聽聽聽<groupId>group-c</groupId>聽聽
  11. 聽聽聽聽聽聽聽聽聽聽<artifactId>excluded-artifact</artifactId>聽聽
  12. 聽聽聽聽聽聽聽聽</exclusion>聽聽
  13. 聽聽聽聽聽聽</exclusions>聽聽
  14. 聽聽聽聽</dependency>聽聽
  15. 聽聽聽聽<dependency>聽聽
  16. 聽聽聽聽聽聽<groupId>group-a</groupId>聽聽
  17. 聽聽聽聽聽聽<artifactId>artifact-b</artifactId>聽聽
  18. 聽聽聽聽聽聽<version>1.0</version>聽聽
  19. 聽聽聽聽聽聽<type>bar</type>聽聽
  20. 聽聽聽聽聽聽<scope>runtime</scope>聽聽
  21. 聽聽聽聽</dependency>聽聽
  22. 聽聽</dependencies>聽聽
  23. </project>聽聽

聽鎴戜滑鍦∕aven瀹炴垬(浜?涓氨閬囧埌浜嗕緷璧栫殑姒傚康锛岄」鐩腑娴嬭瘯闇€瑕佷緷璧杍unit jar鍖咃紝渚濊禆閰嶇疆濡備笅锛?/p>

Xml浠g爜 聽Maven 瀹炴垬一
  1. <dependencies>聽聽
  2. 聽聽聽聽<dependency>聽聽
  3. 聽聽聽聽聽聽<groupId>junit</groupId>聽聽
  4. 聽聽聽聽聽聽<artifactId>junit</artifactId>聽聽
  5. 聽聽聽聽聽聽<version>3.8.1</version>聽聽
  6. 聽聽聽聽聽聽<scope>test</scope>聽聽
  7. 聽聽聽聽</dependency>聽聽
  8. 聽</dependencies>聽聽

聽渚濊禆浼氬寘鍚熀鏈殑groupId, artifactId,version绛夊厓绱狅紝鏍瑰厓绱爌roject涓嬬殑dependencies鍙互鍖呭惈涓€涓垨鑰呭涓猟ependency鍏冪礌锛屼互澹版槑涓€涓垨鑰呭涓緷璧栥€?br>聽涓嬮潰璇︾粏璁茶В姣忎釜渚濊禆鍙互鍖呭惈鐨勫厓绱狅細

groupId,artifactId鍜?strong style="line-height: 1.42em;">version锛氫緷璧栫殑鍩烘湰鍧愭爣锛屽浜庝换浣曚竴涓緷璧栨潵璇达紝鍩烘湰鍧愭爣鏄渶閲嶈鐨勶紝Maven鏍规嵁鍧愭爣鎵嶈兘鎵惧埌闇€瑕佺殑渚濊禆

type: 渚濊禆鐨勭被鍨嬶紝瀵瑰簲浜庨」鐩潗鏍囧畾涔夌殑packaging銆傚ぇ閮ㄥ垎鎯呭喌涓嬶紝璇ュ厓绱犱笉蹇呭0鏄庯紝鍏堕粯璁ゅ€兼槸jar

scope: 渚濊禆鐨勮寖鍥达紝涓嬮潰浼氳繘琛岃瑙?/p>

optional: 鏍囪渚濊禆鏄惁鍙€?/p>

exclusions: 鐢ㄦ潵鎺掗櫎浼犻€掓€т緷璧栵紝涓嬮潰浼氳繘琛岃瑙?/p>

聽 澶ч儴鍒嗕緷璧栧0鏄庡彧鍖呭惈鍩烘湰鍧愭爣銆?/p>


2. 渚濊禆鑼冨洿

聽Maven鍦ㄧ紪璇戜富浠g爜鐨勬椂鍊欓渶瑕佷娇鐢ㄤ竴濂梒lasspath,鍦ㄧ紪璇戝拰鎵ц娴嬭瘯鐨勬椂鍊欎細浣跨敤鍙︿竴濂梒lasspath,瀹為檯杩愯椤圭洰鐨勬椂鍊欙紝鍙堜細浣跨敤涓€濂梒lasspath銆?/p>

聽渚濊禆鑼冨洿灏辨槸鐢ㄦ潵鎺у埗渚濊禆涓庤繖涓夌classpath(缂栬瘧classpath銆佹祴璇昪lasspath銆佽繍琛宑lasspath)鐨勫叧绯伙紝Maven鏈変互涓嬪嚑绉嶄緷璧栬寖鍥达細

compile: 缂栬瘧渚濊禆鑼冨洿銆傚鏋滄病鏈夋寚瀹氾紝灏变細榛樿浣跨敤璇ヤ緷璧栬寖鍥淬€備娇鐢ㄦ渚濊禆鑼冨洿鐨凪aven渚濊禆锛屽浜庣紪璇戙€佹祴璇曘€佽繍琛屼笁绉峜lasspath閮芥湁鏁堛€?/p>

test: 娴嬭瘯渚濊禆鑼冨洿銆備娇鐢ㄦ渚濊禆鑼冨洿鐨凪aven渚濊禆锛屽彧瀵逛簬娴嬭瘯classpath鏈夋晥锛屽湪缂栬瘧涓讳唬鐮佹垨鑰呰繍琛岄」鐩殑浣跨敤鏃跺皢鏃犳硶浣跨敤姝ょ被渚濊禆銆傚吀鍨嬬殑渚嬪瓙灏辨槸JUnit锛屽畠鍙湁鍦ㄧ紪璇戞祴璇曚唬鐮佸強杩愯娴嬭瘯鐨勬椂鍊欐墠闇€瑕併€?/p>

provided: 宸叉彁渚涗緷璧栬寖鍥淬€備娇鐢ㄦ渚濊禆鑼冨洿鐨凪aven渚濊禆锛屽浜庣紪璇戝拰娴嬭瘯classpath鏈夋晥锛屼絾鍦ㄨ繍琛屾椂鏃犳晥銆傚吀鍨嬬殑渚嬪瓙鏄痵ervlet-api锛岀紪璇戝拰娴嬭瘯椤圭洰鐨勬椂鍊欓渶瑕佽渚濊禆锛屼絾鍦ㄨ繍琛岄」鐩殑鏃跺€欙紝鐢变簬瀹瑰櫒宸茬粡鎻愪緵锛屽氨涓嶉渶瑕丮aven閲嶅鍦板紩鍏ヤ竴閬嶃€?/p>

runtime: 杩愯鏃朵緷璧栬寖鍥淬€備娇鐢ㄦ渚濊禆鑼冨洿鐨凪aven渚濊禆锛屽浜庢祴璇曞拰杩愯classpath鏈夋晥锛屼絾鍦ㄧ紪璇戜富浠g爜鏃舵棤鏁堛€傚吀鍨嬬殑渚嬪瓙鏄疛DBC椹卞姩瀹炵幇锛岄」鐩富 浠g爜鐨勭紪璇戝彧闇€瑕丣DK鎻愪緵鐨凧DBC鎺ュ彛锛屽彧鏈夊湪鎵ц娴嬭瘯鎴栬€呰繍琛岄」鐩殑鏃跺€欐墠闇€瑕佸疄鐜颁笂杩版帴鍙g殑鍏蜂綋JDBC椹卞姩銆?/p>

system: 绯荤粺渚濊禆鑼冨洿銆傝渚濊禆涓庝笁绉峜lasspath鐨勫叧绯伙紝鍜宲rovided渚濊禆鑼冨洿瀹屽叏涓€鑷淬€備絾鏄紝浣跨敤system鑼冨洿渚濊禆鏃跺繀椤婚€氳繃 systemPath鍏冪礌鏄惧紡鍦版寚瀹氫緷璧栨枃浠剁殑璺緞銆傜敱浜庢绫讳緷璧栦笉鏄€氳繃Maven浠撳簱瑙f瀽鐨勶紝鑰屼笖寰€寰€涓庢湰鏈虹郴缁熺粦瀹氾紝鍙兘閫犳垚鏋勫缓鐨勪笉鍙Щ妞嶏紝鍥犳 搴旇璋ㄦ厧浣跨敤銆俿ystemPath鍏冪礌鍙互寮曠敤鐜鍙橀噺锛屽锛?/p>

Xml浠g爜 聽Maven 瀹炴垬一
  1. <dependency>聽聽
  2. 聽聽聽聽<groupId>javax.sql</groupId>聽聽
  3. 聽聽聽聽<artifactId>jdbc-stdext</artifactId>聽聽
  4. 聽聽聽聽<version>2.0</version>聽聽
  5. 聽聽聽聽<scope></scope>聽聽
  6. 聽聽聽聽<systemPath>${java.home}/lib/rt.jar</systemPath>聽聽
  7. </dependency>聽聽

import(Maven 2.0.9鍙婁互涓?: 瀵煎叆渚濊禆鑼冨洿銆傝渚濊禆鑼冨洿涓嶄細瀵逛笁绉峜lasspath浜х敓瀹為檯鐨勫奖鍝嶏紝绋嶅悗浼氫粙缁嶅埌銆?/p>

3. 浼犻€掓€т緷璧?/strong>

聽涓嬮潰鎴戜滑鐪嬩竴涓畝鍗曠殑椤圭洰锛岃鑰呭彲浠庨檮浠朵腑涓嬭浇婧愮爜

POM.xml閰嶇疆濡備笅锛?/p>

Xml浠g爜 聽Maven 瀹炴垬一
  1. <project聽xmlns="http://maven.apache.org/POM/4.0.0"聽xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"聽聽
  2. 聽聽xsi:schemaLocation="http://maven.apache.org/POM/4.0.0聽http://maven.apache.org/xsd/maven-4.0.0.xsd">聽聽
  3. 聽聽<modelVersion>4.0.0</modelVersion>聽聽
  4. 聽聽
  5. 聽聽<groupId>com.mycompany.app</groupId>聽聽
  6. 聽聽<artifactId>my-app-simple</artifactId>聽聽
  7. 聽聽<version>0.0.1-SNAPSHOT</version>聽聽
  8. 聽聽<packaging>jar</packaging>聽聽
  9. 聽聽
  10. 聽聽<name>my-app-simple</name>聽聽
  11. 聽聽<url>http://maven.apache.org</url>聽聽
  12. 聽聽
  13. 聽聽<properties>聽聽
  14. 聽聽聽聽<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>聽聽
  15. 聽聽</properties>聽聽
  16. 聽聽
  17. 聽聽<dependencies>聽聽
  18. 聽聽聽聽<dependency>聽聽
  19. 聽聽聽聽聽聽<groupId>junit</groupId>聽聽
  20. 聽聽聽聽聽聽<artifactId>junit</artifactId>聽聽
  21. 聽聽聽聽聽聽<version>3.8.1</version>聽聽
  22. 聽聽聽聽聽聽<scope>test</scope>聽聽
  23. 聽聽聽聽</dependency>聽聽
  24. 聽聽聽聽聽聽
  25. 聽聽聽聽聽<dependency>聽聽
  26. 聽聽聽聽聽聽<groupId>org.springframework</groupId>聽聽
  27. 聽聽聽聽聽聽<artifactId>spring-core</artifactId>聽聽
  28. 聽聽聽聽聽聽<version>2.5.6</version>聽聽
  29. 聽聽聽聽</dependency>聽聽
  30. 聽聽</dependencies>聽聽
  31. </project>聽聽

聽鎴戜滑鍙互鐪嬪埌姝ら」鐩紩鍏ヤ緷璧杍unit鍜宻pring-core锛屾垜浠彲浠ュ湪Maven浠撳簱涓煡鎵緎pring-core鏋勪欢锛屽鍥撅細


Maven 瀹炴垬一

鐐瑰嚮POM鎴戜滑浼氱湅鍒拌鏂囦欢鍖呭惈浜嗕竴涓猚ommons-logging渚濊禆锛?/p>

Xml浠g爜 聽Maven 瀹炴垬一
  1. <dependency>聽聽
  2. 聽聽<groupId>commons-logging</groupId>聽聽聽
  3. 聽聽<artifactId>commons-logging</artifactId>聽聽聽
  4. 聽聽<version>1.1.1</version>聽聽聽
  5. </dependency>聽聽


聽閭d箞璇ヤ緷璧栦細浼犻€掑埌褰撳墠椤圭洰涓紝杩欏氨鏄緷璧栫殑浼犻€掓€э紝鎵撳紑椤圭洰鏌ョ湅Maven dependencies:


Maven 瀹炴垬一

4. 鍙€変緷璧?/strong>

聽鏈夋椂鍊欐垜浠笉鎯宠渚濊禆浼犻€掞紝閭d箞鍙厤缃渚濊禆涓哄彲閫変緷璧栵紝灏嗗厓绱爋ptional璁剧疆涓簍rue鍗冲彲,渚嬪锛?/p>

Xml浠g爜 聽Maven 瀹炴垬一
  1. <dependency>聽聽
  2. 聽聽<groupId>commons-logging</groupId>聽聽聽
  3. 聽聽<artifactId>commons-logging</artifactId>聽聽聽
  4. 聽聽<version>1.1.1</version>聽聽聽
  5. 聽聽<optional>true<optional>聽聽
  6. </dependency>聽聽

閭d箞渚濊禆璇ラ」鐩殑鍙︿互椤圭洰灏嗕笉浼氬緱鍒版渚濊禆鐨勪紶閫?/p>

聽5. 鎺掗櫎渚濊禆

聽聽聽聽聽聽 褰撴垜浠紩鍏ョ涓夋柟jar鍖呯殑鏃跺€欙紝闅惧厤浼氬紩鍏ヤ紶閫掓€т緷璧栵紝鏈変簺鏃跺€欒繖鏄ソ浜嬶紝鐒惰€屾湁浜涙椂鍊欐垜浠笉闇€瑕佸叾涓殑涓€浜涗紶閫掓€т緷璧?/p>

姣斿涓婁緥涓殑椤圭洰锛屾垜浠笉鎯冲紩鍏ヤ紶閫掓€т緷璧朿ommons-logging锛屾垜浠彲浠ヤ娇鐢╡xclusions鍏冪礌澹版槑鎺掗櫎渚?璧栵紝exclusions鍙互鍖呭惈涓€涓垨鑰呭涓猠xclusion瀛愬厓绱狅紝鍥犳鍙互鎺掗櫎涓€涓垨鑰呭涓紶閫掓€т緷璧栥€傞渶瑕佹敞鎰忕殑鏄紝澹版槑exclusions 鐨勬椂鍊欏彧闇€瑕乬roupId鍜宎rtifactId锛岃€屼笉闇€瑕乿ersion鍏冪礌锛岃繖鏄洜涓哄彧闇€瑕乬roupId鍜宎rtifactId灏辫兘鍞竴瀹氫綅渚濊禆 鍥句腑鐨勬煇涓緷璧栥€傛崲鍙ヨ瘽璇达紝Maven瑙f瀽鍚庣殑渚濊禆涓紝涓嶅彲鑳藉嚭鐜癵roupId鍜宎rtifactId鐩稿悓锛屼絾鏄痸ersion涓嶅悓鐨勪袱涓緷璧栥€?/p>

聽濡備笅鏄竴涓帓闄や緷璧栫殑渚嬪瓙锛?/p>

Xml浠g爜 聽Maven 瀹炴垬一
  1. <dependency>聽聽聽聽
  2. 聽聽聽聽聽<groupId>org.springframework</groupId>聽聽
  3. 聽聽聽聽聽<artifactId>spring-core</artifactId>聽聽
  4. 聽聽聽聽聽<version>2.5.6</version>聽聽
  5. 聽聽聽聽聽<exclusions>聽聽
  6. 聽聽聽聽聽聽聽聽聽聽聽<exclusion>聽聽聽聽聽聽
  7. 聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽<groupId>commons-logging</groupId>聽聽聽聽聽聽聽聽聽聽
  8. 聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽<artifactId>commons-logging</artifactId>聽聽
  9. 聽聽聽聽聽聽聽聽聽聽聽</exclusion>聽聽
  10. 聽聽聽聽聽</exclusions>聽聽
  11. </dependency>聽聽

聽聽

聽5. 渚濊禆褰掔被

聽濡傛灉鎴戜滑椤圭洰涓敤鍒板緢澶氬叧浜嶴pring Framework鐨勪緷璧栵紝瀹冧滑鍒嗗埆鏄痮rg.springframework:spring-core:2.5.6, org.springframework:spring-beans:2.5.6,org.springframework:spring- context:2.5.6,瀹冧滑閮芥槸鏉ヨ嚜鍚屼竴椤圭洰鐨勪笉鍚屾ā鍧椼€傚洜姝わ紝鎵€鏈夎繖浜涗緷璧栫殑鐗堟湰閮芥槸鐩稿悓鐨勶紝鑰屼笖鍙互棰勮锛屽鏋滃皢鏉ラ渶瑕佸崌绾pring Framework锛岃繖浜涗緷璧栫殑鐗堟湰浼氫竴璧峰崌绾с€傚洜姝わ紝鎴戜滑搴旇鍦ㄤ竴涓敮涓€鐨勫湴鏂瑰畾涔夌増鏈紝骞朵笖鍦╠ependency澹版槑寮曠敤杩欎竴鐗堟湰锛岃繖涓€鍦?Spring Framework鍗囩骇鐨勬椂鍊欏彧闇€瑕佷慨鏀逛竴澶勫嵆鍙€?/p>

Xml浠g爜 聽Maven 瀹炴垬一
  1. <project聽xmlns="http://maven.apache.org/POM/4.0.0"聽xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"聽聽
  2. 聽聽聽聽xsi:schemaLocation="http://maven.apache.org/POM/4.0.0聽http://maven.apache.org/xsd/maven-4.0.0.xsd">聽聽
  3. 聽聽聽聽<modelVersion>4.0.0</modelVersion>聽聽
  4. 聽聽
  5. 聽聽聽聽<groupId>com.mycompany.app</groupId>聽聽
  6. 聽聽聽聽<artifactId>my-app-simple</artifactId>聽聽
  7. 聽聽聽聽<version>0.0.1-SNAPSHOT</version>聽聽
  8. 聽聽聽聽<packaging>jar</packaging>聽聽
  9. 聽聽聽聽<name>my-app-simple</name>聽聽
  10. 聽聽聽聽<properties>聽聽
  11. 聽聽聽聽聽聽聽聽<springframework.version>2.5.6</springframework.version>聽聽
  12. 聽聽聽聽</properties>聽聽
  13. 聽聽
  14. 聽聽聽聽<dependencies>聽聽
  15. 聽聽聽聽聽聽聽聽<dependency>聽聽
  16. 聽聽聽聽聽聽聽聽聽聽聽聽<groupId>junit</groupId>聽聽
  17. 聽聽聽聽聽聽聽聽聽聽聽聽<artifactId>junit</artifactId>聽聽
  18. 聽聽聽聽聽聽聽聽聽聽聽聽<version>3.8.1</version>聽聽
  19. 聽聽聽聽聽聽聽聽聽聽聽聽<scope>test</scope>聽聽
  20. 聽聽聽聽聽聽聽聽</dependency>聽聽
  21. 聽聽
  22. 聽聽聽聽聽聽聽聽<dependency>聽聽
  23. 聽聽聽聽聽聽聽聽聽聽聽聽<groupId>org.springframework</groupId>聽聽
  24. 聽聽聽聽聽聽聽聽聽聽聽聽<artifactId>spring-core</artifactId>聽聽
  25. 聽聽聽聽聽聽聽聽聽聽聽聽<version>${springframework.version}</version>聽聽
  26. 聽聽聽聽聽聽聽聽</dependency>聽聽
  27. 聽聽聽聽聽聽聽聽<dependency>聽聽
  28. 聽聽聽聽聽聽聽聽聽聽聽聽<groupId>org.springframework</groupId>聽聽
  29. 聽聽聽聽聽聽聽聽聽聽聽聽<artifactId>spring-beans</artifactId>聽聽
  30. 聽聽聽聽聽聽聽聽聽聽聽聽<version>${springframework.version}</version>聽聽聽聽聽聽聽聽聽聽聽聽聽
  31. 聽聽聽聽聽聽聽聽</dependency>聽聽
  32. 聽聽聽聽</dependencies>聽聽
  33. </project>聽聽

6. 鍦‥clipse涓鐞嗕緷璧?/strong>

瀹夎濂絤2eclipse涔嬪悗锛堢2璇炬湁璇︾粏璁茶В锛夊氨鍙互鐢╡clipse鏉ョ鐞嗕緷璧栥€?/p>

濡傚浘锛屽湪璇ラ」鐩殑pom.xml涓偣鍑籇ependency Hierarchy鍙互鐪嬪埌渚濊禆鏍?


Maven 瀹炴垬一

聽鐐瑰嚮Dependencies鍙互娣诲姞鏂扮殑渚濊禆锛岀偣鍑婚€夋嫨涓€涓緷璧栵紝鐐瑰嚮remove鍙互鍒犻櫎锛岀偣鍑籄dd鍙互鏂板涓€涓緷璧栵紝濡傚浘锛?br>Maven 瀹炴垬一

濡備笅鍥撅紝鎼滅礌org.springframework锛堟澶勬槸浠嶮aven涓績浠撳簱杩涜鎼滅储锛夛紝閫夋嫨浣犳兂瑕佺殑妯″潡鍜岀増鏈紝鐐瑰嚮OK鍗冲彲锛?/p>


Maven 瀹炴垬一

文章评论

Maven 瀹炴垬一
鲜为人知的编程真相
Maven 瀹炴垬一
5款最佳正则表达式编辑调试器
Maven 瀹炴垬一
程序员必看的十大电影
Maven 瀹炴垬一
科技史上最臭名昭著的13大罪犯
Maven 瀹炴垬一
旅行,写作,编程
Maven 瀹炴垬一
2013年美国开发者薪资调查报告
Maven 瀹炴垬一
“肮脏的”IT工作排行榜
Maven 瀹炴垬一
程序员的鄙视链
Maven 瀹炴垬一
程序员最害怕的5件事 你中招了吗?
Maven 瀹炴垬一
为什么程序员都是夜猫子
Maven 瀹炴垬一
写给自己也写给你 自己到底该何去何从
Maven 瀹炴垬一
当下全球最炙手可热的八位少年创业者
Maven 瀹炴垬一
Web开发者需具备的8个好习惯
Maven 瀹炴垬一
老程序员的下场
Maven 瀹炴垬一
程序员的一天:一寸光阴一寸金
Maven 瀹炴垬一
那些性感的让人尖叫的程序员
Maven 瀹炴垬一
总结2014中国互联网十大段子
Maven 瀹炴垬一
程序员都该阅读的书
Maven 瀹炴垬一
程序员周末都喜欢做什么?
Maven 瀹炴垬一
60个开发者不容错过的免费资源库
Maven 瀹炴垬一
十大编程算法助程序员走上高手之路
Maven 瀹炴垬一
看13位CEO、创始人和高管如何提高工作效率
Maven 瀹炴垬一
中美印日四国程序员比较
Maven 瀹炴垬一
Java程序员必看电影
Maven 瀹炴垬一
亲爱的项目经理,我恨你
Maven 瀹炴垬一
为啥Android手机总会越用越慢?
Maven 瀹炴垬一
如何区分一个程序员是“老手“还是“新手“?
Maven 瀹炴垬一
Google伦敦新总部 犹如星级庄园
Maven 瀹炴垬一
程序员和编码员之间的区别
Maven 瀹炴垬一
程序员的样子
Maven 瀹炴垬一
10个帮程序员减压放松的网站
Maven 瀹炴垬一
那些争议最大的编程观点
Maven 瀹炴垬一
代码女神横空出世
Maven 瀹炴垬一
做程序猿的老婆应该注意的一些事情
Maven 瀹炴垬一
团队中“技术大拿”并非越多越好
Maven 瀹炴垬一
10个调试和排错的小建议
Maven 瀹炴垬一
程序猿的崛起——Growth Hacker
Maven 瀹炴垬一
什么才是优秀的用户界面设计
Maven 瀹炴垬一
不懂技术不要对懂技术的人说这很容易实现
Maven 瀹炴垬一
Java 与 .NET 的平台发展之争
Maven 瀹炴垬一
我跳槽是因为他们的显示器更大
Maven 瀹炴垬一
Web开发人员为什么越来越懒了?
Maven 瀹炴垬一
程序员眼里IE浏览器是什么样的
Maven 瀹炴垬一
每天工作4小时的程序员
Maven 瀹炴垬一
程序员应该关注的一些事儿
Maven 瀹炴垬一
编程语言是女人
Maven 瀹炴垬一
我是如何打败拖延症的
Maven 瀹炴垬一
2013年中国软件开发者薪资调查报告
Maven 瀹炴垬一
如何成为一名黑客