Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Modeler   Code  
»áÔ±   
 
   
 
 
     
   
 ¶©ÔÄ
  ¾èÖú
Apache Maven ÈëÃÅÆª
 
×÷ÕߣºGeorge Ma À´Ô´£ºOracle ·¢²¼ÓÚ 2015-01-12
  3268  次浏览      27
 

дÕâ¸ö maven µÄÈëÃÅÆªÊÇÒòΪ֮ǰÔÚÒ»¸ö¿ª·¢Õß»áµÄ¶¯ÊÖʵÑéÖз¢ÏÖͦ¶àÈ˶ÔÓÚ maven ²»ÊÇÄÇôÁ˽⣬ËùÒÔ¾ÍÓÐÁËÕâ¸öÏë·¨¡£
Õâ¸öÈëÃÅÆª·ÖÉÏÏÂÁ½Æª¡£±¾ÎÄ×ÅÖØ¶¯ÊÖ£¬Óà maven À´¹¹½¨ÔËÐÐ hellow world ³ÌÐò£¬Ìå»áһϲ»ÓÃÈκΠIDE £¬Ö»Óà maven ÊÇÕ¦»ØÊ¡£È»ºóÏÂÆª¾Í½²½âһϠmaven µÄºËÐĸÅÄдÕâÁ½ÆªÎÄÕÂÌØÒâ»Ø±ÜÁ˸´ÔÓµÄʾÀý£¬Ò²²»Ê¹Óà IDE £¬Ä¿µÄÊÇÅųý¸ÉÈÅ£¬×ÅÖØÓÚ maven ±¾Éí¡£

Apache Maven ÊÇ×öʲôÓõģ¿

Maven ÊÇÒ»¸öÏîÄ¿¹ÜÀíºÍ¹¹½¨×Ô¶¯»¯¹¤¾ß¡£µ«ÊǶÔÓÚÎÒÃdzÌÐòÔ±À´Ëµ£¬ÎÒÃÇ×î¹ØÐĵÄÊÇËüµÄÏîÄ¿¹¹½¨¹¦ÄÜ¡£ËùÒÔÕâÀïÎÒÃǽéÉܵľÍÊÇÔõÑùÓà maven À´Âú×ãÎÒÃÇÏîÄ¿µÄÈÕ³£ÐèÒª¡£

Maven ʹÓùßÀýÓÅÓÚÅäÖõÄÔ­Ôò ¡£ËüÒªÇóÔÚûÓж¨ÖÆÖ®Ç°£¬ËùÓеÄÏîÄ¿¶¼ÓÐÈçϵĽṹ£º

Ò»¸ö maven ÏîÄ¿ÔÚĬÈÏÇé¿öÏ»á²úÉú JAR Îļþ£¬ÁíÍâ £¬±àÒëºó µÄ classes »á·ÅÔÚ ${basedir}/target/classes ÏÂÃæ£¬ JAR Îļþ»á·ÅÔÚ ${basedir}/target ÏÂÃæ¡£

ÕâʱÓÐÈË»á˵ÁË £¬ Ant ¾ÍûÓÐÄÇô¶àÒªÇó £¬ËüÔÊÐíÄã¿ÉÒÔ×ÔÓɵ͍ÒåÏîÄ¿µÄ½á¹¹¡£ÔÚÕâÀï²»ÏëÒýÆð¿Úˮս¹þ£¬ ÎÒ¸öÈ˾õµÃ maven µÄÕâЩĬÈ϶¨ÒåºÜ·½±ãʹÓá£

ºÃÁË £¬½ÓÏÂÀ´ÎÒÃÇÀ´°²×° maven ¡£

Maven µÄ°²×°

ÔÚ°²×° maven ǰ£¬Ïȱ£Ö¤Äã°²×°ÁË JDK ¡£ JDK 6 ¿ÉÒÔ´Ó Oracle ¼¼ÊõÍøÉÏÏÂÔØ£º
http://www.oracle.com/technetwork/cn/java/javase/downloads/index.html¡£

Maven ¹ÙÍøµÄÏÂÔØÁ´½ÓÊÇ : http://maven.apache.org/download.html ¡£

¸ÃÒ³µÄ×îºó¸ø³öÁ˰²×°Ö¸ÄÏ¡£

°²×°Íê³Éºó£¬ÔÚÃüÁîÐÐÔËÐÐÏÂÃæµÄÃüÁ

$ mvn -v 
Apache Maven 3.0.3 (r1075438; 2011-03-01 01:31:09+0800)
Maven home: /home/limin/bin/maven3
Java version: 1.6.0_24, vendor: Sun Microsystems Inc.
Java home: /home/limin/bin/jdk1.6.0_24/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "2.6.35-28-generic-pae", arch: "i386", family: "unix"

Èç¹ûÄã¿´µ½ÀàËÆÉÏÃæµÄÊä³öµÄ»°£¬¾Í˵Ã÷°²×°³É¹¦ÁË¡£

½ÓÏÂÀ´ÎÒÃÇÓà maven À´½¨Á¢×îÖøÃûµÄ¡°Hello World!¡±³ÌÐò :)

×¢Ò⣺Èç¹ûÄãÊǵÚÒ»´ÎÔËÐÐ maven£¬ÄãÐèÒª Internet Á¬½Ó£¬ÒòΪ maven ÐèÒª´ÓÍøÉÏÏÂÔØÐèÒªµÄ²å¼þ¡£

ÎÒÃÇÒª×öµÄµÚÒ»²½Êǽ¨Á¢Ò»¸ö maven ÏîÄ¿¡£ÔÚ maven ÖУ¬ÎÒÃÇÊÇÖ´ÐÐ maven Ä¿±ê (goal) À´×öÊÂÇéµÄ¡£

maven Ä¿±êºÍ ant µÄ target ²î²»¶à¡£ÔÚÃüÁîÐÐÖÐÖ´ÐÐÏÂÃæµÄÃüÁîÀ´½¨Á¢ÎÒÃÇµÄ hello world ÏîÄ¿

~$mvn archetype:generate -DgroupId=com.mycompany.helloworld -DartifactId=helloworld 
-Dpackage=com.mycompany.helloworld -Dversion=1.0-SNAPSHOT

archetype:generate Ä¿±ê»áÁгöһϵÁÐµÄ archetype ÈÃÄãÑ¡Ôñ¡£ Archetype ¿ÉÒÔÀí½â³ÉÏîÄ¿µÄÄ£ÐÍ¡£ Maven ΪÎÒÃÇÌṩÁ˺ܶàÖÖµÄÏîĿģÐÍ£¬°üÀ¨´Ó¼òµ¥µÄ Swing µ½¸´Ô Web Ó¦Óá£ÎÒÃÇÑ¡ÔñĬÈ쵀 maven-archetype-quickstart £¬ÊDZàºÅ #106 £¬ÈçÏÂͼËùʾ£º

Á¬´òÁ½¸ö»Ø³µ£¬ÕâʱºòÈÃÄãÈ·¶¨ÏîÄ¿ÊôÐÔµÄÅäÖã¬

ÕâЩÊôÐÔÊÇÎÒÃÇÔÚÃüÁîÐÐÖÐÓà -D Ñ¡ÏîÖ¸¶¨µÄ¡£¸ÃÑ¡ÏîʹÓà -Dname=value µÄ¸ñʽ¡£»Ø³µÈ·ÈÏ£¬¾ÍÍê³ÉÁËÏîÄ¿µÄ½¨Á¢£¬ÈçÏÂͼËùʾ£º

ÕâʱºòÎÒÃÇ¿´Ò»Ï maven ¸øÎÒÃǽ¨Á¢µÄÎļþĿ¼½á¹¹£º

maven µÄ archetype ²å¼þ½¨Á¢ÁËÒ»¸ö helloworld Ŀ¼£¬Õâ¸öÃû×ÖÀ´×Ô artifactId ¡£ÔÚÕâ¸öĿ¼ÏÂÃæ£¬ÓÐÒ»¸ö Project Object Model(POM) Îļþ pom.xml ¡£Õâ¸öÎļþÓÃÓÚÃèÊöÏîÄ¿£¬ÅäÖòå¼þºÍ¹ÜÀíÒÀÀµ¹ØÏµ¡£
Ô´´úÂëºÍ×ÊÔ´Îļþ·ÅÔÚ src/main ÏÂÃæ£¬¶ø²âÊÔ´úÂëºÍ×ÊÔ´·ÅÔÚ src/test ÏÂÃæ¡£

Maven ÒѾ­ÎªÎÒÃǽ¨Á¢ÁËÒ»¸ö App.java Îļþ£º

package com.mycompany.helloworld;   

/**
* Hello world!
*
*/
public class App { public static void main( String[] args ) { System.out.println( "Hello World!" ); } }

ÕýÊÇÎÒÃÇÐèÒªµÄ Hello World ´úÂë¡£ËùÒÔÎÒÃÇ¿ÉÒÔ¹¹½¨ºÍÔËÐÐÕâ¸ö³ÌÐòÁË¡£ÓÃÏÂÃæ¼òµ¥µÄÃüÁî¹¹½¨£º

~$cd helloworld
~$mvn package 

µ±ÄãµÚÒ»´ÎÔËÐÐ maven µÄʱºò£¬Ëü»á´ÓÍøÉ쵀 maven ¿â (repository) ÏÂÔØÐèÒªµÄ³ÌÐò£¬´æ·ÅÔÚÄãµçÄԵı¾µØ¿â (local repository) ÖУ¬ËùÒÔÕâ¸öʱºòÄãÐèÒªÓÐ Internet Á¬½Ó¡£Maven ĬÈϵı¾µØ¿âÊÇ ~/.m2/repository/ £¬ÔÚ Windows ÏÂÊÇ %USER_HOME%\.m2\repository\ ¡£

Èç¹û¹¹½¨Ã»ÓдíÎóµÄ»°£¬¾Í»áµÃµ½ÀàËÆÏÂÃæµÄ½á¹û£º

Õâ¸öʱºò£¬ maven ÔÚ helloworld ÏÂÃæ½¨Á¢ÁËÒ»¸öеÄĿ¼ target/ £¬¹¹½¨´ò°üºóµÄ jar Îļþ helloworld-1.0-SNAPSHOT.jar ¾Í´æ·ÅÔÚÕâ¸öĿ¼Ï¡£±àÒëºóµÄ class Îļþ·ÅÔÚ target/classes/ Ŀ¼ÏÂÃæ£¬²âÊÔ class Îļþ·ÅÔÚ target/test-classes/ Ŀ¼ÏÂÃæ¡£

ΪÁËÑéÖ¤ÎÒÃǵijÌÐòÄÜÔËÐУ¬Ö´ÐÐÏÂÃæµÄÃüÁ

 ~$java -cp target/helloworld-1.0-SNAPSHOT.jar com.mycompany.helloworld.App

ÔËÐгɹ¦£¡£¡

ÏÖÔÚÄã¿ÉÄÜ»áÓв»ÉÙµÄÎÊÌâ¡£ËùÒÔÏÂһƪÎÄÕ»á½âÊÍ maven µÄºËÐĸÅÄϣÍûÄܻشðÄã¿ÉÄÜ»áÓеÄһЩÒÉÎÊ¡£

 

   
3268 ´Îä¯ÀÀ       27
     
 
Ïà¹ØÎÄÕÂ

ÏîÄ¿Á÷³Ì_IPD
EAÖеÄÏîÄ¿¹ÜÀí-¼Æ»®Óë¸ú×Ù
´óÐÍÏîÄ¿ÖеÄÃô½ÝÏîÄ¿¹ÜÀíʵ¼ù
Ãô½ÝÏîÄ¿¹ÜÀí¸ÅÊö
 
Ïà¹ØÎĵµ

IPDÌåϵ¿ò¼ÜϵÄÏîÄ¿¹ÜÀí
ÏîÄ¿¹ÜÀí»ù´¡ÓëÃô½Ý¿ª·¢ÈëÃÅ
ITÏîÄ¿¹ÜÀíÅàѵ
Èí¼þÏîÄ¿¹ÜÀí
 
Ïà¹Ø¿Î³Ì

Èí¼þ¿ª·¢¹ý³ÌÖеÄÏîÄ¿¹ÜÀí
»ùÓÚIPDµÄÏîÄ¿¹ÜÀí·½·¨Óëʵ¼ù
Ãô½ÝÏîÄ¿¹ÜÀíʵ¼ù
ÏîÄ¿¹ÜÀí¸ß¼¶Êµ¼ù
×îл¼Æ»®
DeepSeekÔÚÈí¼þ²âÊÔÓ¦ÓÃʵ¼ù 4-12[ÔÚÏß]
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢Êµ¼ù 4-19[ÔÚÏß]
UAF¼Ü¹¹ÌåϵÓëʵ¼ù 4-11[±±¾©]
AIÖÇÄÜ»¯Èí¼þ²âÊÔ·½·¨Óëʵ¼ù 5-23[ÉϺ£]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 4-26[±±¾©]
ÒµÎñ¼Ü¹¹Éè¼ÆÓ뽨ģ 4-18[±±¾©]

ÕýÊÓÑз¢¹ÜÀí²ÅÊǸßˮƽ¾ºÕù
ÐèÇóÊÇÈçºÎ±ä³É²úÆ·Ô­Ð͵Ä
²úÆ·¾­ÀíÄÜÁ¦Ä£Ðͽâ˵¡ª°Ñ¿Ø
²úÆ·¾­ÀíµÄÕýÈ·¶¨Î»
Ë­ÊǺϸñµÄ²úÆ·¾­Àí£¿
²úÆ·¹ÜÀíÓë²úÆ·ÓªÏúµÄÇø±ð


ͳһ¹ý³Ì¼°Ó¦ÓÃ
Ãô½Ý¹ý³Ìʵ¼ù
»ùÓÚXP/RUPµÄµü´ú¿ª·¢
Èí¼þ¿ª·¢¹ý³ÌÖ¸ÄÏ
SCRUM¹ý³Ìʵ¼ù
Ãô½Ý²âÊÔ-¼òµ¥¶ø¿ÉÐÐ


ij²©²ÊÆóÒµ ²úÆ·¾­ÀíÓë²úÆ·¹ÜÀí
ÃæÏò²úÆ·µÄÐèÇó·ÖÎöÓë¹ÜÀí
ÖйúÃñº½ ²úÆ·¾­Àí¹Ø¼ü¼¼ÄÜ
ÉîÛÚ ²úÆ·¾­ÀíÓë²úÆ·¹ÜÀí
ijͨÐÅÆóÒµ »ùÓÚ»¥ÁªÍøµÄ²úÆ·´´ÐÂ
ij֪Ãû»¥ÁªÍøÆóÒµ ²úÆ·¹ÜÀí
ÊÀ¼Í¸ßͨ ´´Ð´´ÔìÍ»ÆÆÐÔ²úÆ·