±à¼ÍƼö: |
±¾ÎÄÀ´×ÔÓÚ¼òÊ飬MavenÊÇApacheµÄÒ»¸ö¿çƽ̨µÄÈí¼þÏîÄ¿¹ÜÀíºÍ¹¹½¨¹¤¾ß£¬Ö÷ÒªÓÃÓÚ»ùÓÚjavaƽ̨µÄÏîÄ¿¹¹½¨¡¢ÒÀÀµ¹ÜÀí¡£ |
|
1.MavenÃüÁî

MavenÏîÄ¿¹¹½¨¹ý³ÌÈçÉÏͼËùʾ£¬Ö÷Òª¹¹½¨ÃüÁîÓм¸ÖÖ£º
mvn validate ÑéÖ¤£¬ÑéÖ¤ÏîÄ¿ÊÇÕýÈ·µÄ²¢ÇÒËùÓеÄÐÅÏ¢ÊÇ¿ÉÓõģ»
mvn clean ÇåÀí£¬ÇåÀíÏîÄ¿»º´æÊä³ö£¬Ò»°ãÊÇtargetÎļþ¼Ð±»É¾³ý£»
mvn compile ±àÒ룬½«javaÔ´Îļþ±àÒë³É.classÎļþ£»
mvn test ²âÊÔ£¬Éú³É²âÊÔ±¨¸æ£¬ÔËÐÐtestĿ¼ÏµÄËùÓе¥Ôª²âÊÔ£»
mvn package ´ò°ü£¬½«ÏîÄ¿´ò³Éjar¡¢war»òÕßpom£»
mvn install °²×°£¬½«µ±Ç°ÏîÄ¿°²×°µ½±¾µØmaven¿â£¬¹©ÆäËûÏîÄ¿ÒÀÀµ¡£
mvn deploy²¿Êð£¬ÔÚ¹¹½¨»·¾³ÖÐÍê³É£¬¸´ÖÆ×îÖյİüµ½Ô¶³Ì¿â¡£
Ö´ÐкóÃæµÄÃüÁî»á×Ô¶¯Ö´ÐÐÇ°ÃæµÄÃüÁ±ÈÈçÖ´ÐÐmvn packageʱ»áÖ´ÐÐvalidate¡¢clean¡¢compile¡¢test¡¢packageÎå¸ö½×¶Î¡£
2.Maven°²×°ÓëÅäÖÃ
1£©°²×°jdk1.7²¢ÅäÖû·¾³±äÁ¿
2£©°²×°²¢ÅäÖÃmaven»·¾³±äÁ¿
µ½maven¹ÙÍøÏÂÔØmaven×îаæÑ¹Ëõ°ü£¬½âѹµ½±¾µØ£¬Ìí¼Óϵͳ»·¾³±äÁ¿
MAVEN_HOME: D:\develop\apache-maven-3.5.0
Path: % MAVEN _HOME%\bin
ÒÔÉÏÁ½²½ÅäÖÃÍê±Ïºó£¬ÔÚÃüÁîÐÐÖ´ÐÐmvn ¨Cv£¬¿ÉÒÔmaven°æ±¾ÐÅÏ¢ºÍ»ù±¾ÅäÖÃÐÅÏ¢±íʾÅäÖóɹ¦¡£
3£©×Ô¶¨Òåmaven²Ö¿âλÖÃ
ÕÒµ½maven°²×°Ä¿Â¼conf£¬´ò¿ªsettingÎļþ£¬ÐÞ¸ÄlocalRepository½ÚµãÅäÖÃΪָ¶¨Â·¾¶¼´¿É£¬±ÈÈ磺<localRepository> D:/maven/repository </localRepository>
4£©maven°²×°Ä¿Â¼½á¹¹

˵Ã÷£º
binÖдæ·Å¿ÉÖ´ÐеĶþ½øÖÆÎļþ
conf´æ·Åsettings.xmlÎļþ
lib ÔËÐÐmavenËùÒÀÀµµÄjar°ü
5£©mavenÏîĿĿ¼Լ¶¨
src/main/java ´æ·ÅÏîÄ¿µÄjavaÔ´Îļþ
src/main/resources ´æ·ÅÏîÄ¿µÄ×ÊÔ´Îļþ£¬Èçspring£¬hibernate¡¢mybatisµÄÅäÖÃÎļþ
src/test/java ´æ·ÅËùÓеIJâÊÔµÄjavaÎļþ
src/test/resources ´æ·Å²âÊÔÓõÄ×ÊÔ´Îļþ
target ÏîÄ¿Êä³öλÖÃ
pom.xml ÒÀÀµ¹ÜÀíÎļþ
3.MavenºËÐĸÅÄî
1£©ÏîÄ¿¶ÔÏóÄ£ÐÍ

˵Ã÷£ºmaven¸ù¾Ýpom.xmlÎļþ£¬°ÑËüת»¯³ÉÏîÄ¿¶ÔÏóÄ£ÐÍ(POM)£¬ÕâʱҪ½âÎöÒÀÀµ¹ØÏµ£¬È»ºóÈ¥Ïà¶ÔÓ¦µÄmaven¿âÖвéÕÒËùÒÀÀµµÄjar°ü¡£ÔÚclean£¬compile£¬test£¬packageµÈÉúÃüÖÜÆÚ½×¶Î¶¼ÓÐÏàÓ¦µÄPlug-inÀ´×öÕâЩÊÂÇ飬¶øÕâЩplug-in»á²úÉúһЩÖмä²úÎï¡£
2£©maven²Ö¿â
Maven²Ö¿âÓÃÀ´´æ·ÅMaven¹ÜÀíµÄËùÓÐJar°ü¡£·ÖΪ£º±¾µØ²Ö¿âlocalºÍÖÐÑë²Ö¿âcentral¡£
±¾µØ²Ö¿â£ºMaven±¾µØ¿âµÄJar°ü²Ö¿â¡£
ÖÐÑë²Ö¿â£ºMaven¹Ù·½ÌṩµÄÔ¶³Ì²Ö¿â¡£
µ±ÏîÄ¿±àÒëʱ£¬MavenÊ×ÏÈ´Ó±¾µØ²Ö¿âÖÐѰÕÒÏîÄ¿ËùÐèµÄJar°ü£¬Èô±¾µØ²Ö¿âûÓУ¬ÔÙµ½MavenµÄÖÐÑë²Ö¿âÏÂÔØËùÐèJar°üµ½±¾µØ²Ö¿â¡£
3£©maven×ø±ê
×ø±êÊÇJar°üµÄΨһ±êʶ£¬Mavenͨ¹ý×ø±êÔÚ²Ö¿âÖÐÕÒµ½ÏîÄ¿ËùÐèµÄJar°ü¡£
groupId£º¶¨Ò嵱ǰmavenÏîÄ¿ÊôÓÚÄĸöÏîÄ¿
artifactId£º¶¨Òåʵ¼ÊÏîÄ¿ÖеÄijһ¸öÄ£¿é
version£º¶¨Ò嵱ǰÏîÄ¿µÄµ±Ç°°æ±¾
packaging£º¶¨Ò嵱ǰÏîÄ¿µÄ´ò°ü·½Ê½
4£©ÒÀÀµ¹ÜÀí
ÒÀÀµ·ÖΪ´«µÝÒÀÀµ¡¢ÅųýÒÀÀµ£¬»¹ÓÐÒÀÀµ³åÍ»½â¾ö
´«µÝÒÀÀµ£ºÈç¹ûÏîÄ¿ÒýÓÃÁËÒ»¸öJar°ü£¬¶ø¸ÃJar°üÓÖÒýÓÃÁËÆäËûJar°ü£¬ÄÇôÔÚĬÈÏÇé¿öÏÂÏîÄ¿±àÒëʱ£¬Maven»á°ÑÖ±½ÓÒýÓúͼä½ÓÒýÓõÄJar°ü¶¼ÏÂÔØµ½±¾µØ¡£
ÅųýÒÀÀµ£ºÈç¹ûÎÒÃÇÖ»ÏëÏÂÔØÖ±½ÓÒýÓõÄJar°ü£¬ÄÇôÐèÒªÔÚpom.xml½«ÐèÒªÅųýµÄJar°üµÄ×ø±êдÔÚÖС£
ÒÀÀµ³åÍ»£ºÈôÏîÄ¿Öжà¸öJarͬʱÒýÓÃÁËÏàͬµÄJarʱ£¬»á²úÉúÒÀÀµ³åÍ»£¬µ«Maven²ÉÓÃÁË×î¶Ì·¾¶ÓÅÏȺÍÉùÃ÷ÓÅÏÈÁ½ÖÖ±ÜÃâ³åÍ»µÄ²ßÂÔ£¬Òò´ËÔÚMavenÖÐÊDz»´æÔÚÒÀÀµ³åÍ»µÄ¡£
5£©¾ÛºÏÓë¼Ì³Ð
¾ÛºÏ£º¶à¸öÏîÄ¿»òÕßÄ£¿é¾ÛºÏµ½Ò»Æð£¬½¨Á¢Ò»¸öpackage·½Ê½ÎªpomµÄÏîÄ¿parentרߺÔð¾ÛºÏ¹¤×÷£¬²¢Ê¹ÓÃmodules-moduleÖ¸¶¨×ÓÄ£¿é¡£
¼Ì³Ð£º¶à¸öÄ£¿é¾ÛºÏʱ£¬×ÓÄ£¿éÐèÒª¼Ì³Ð¸¸Ä£¿éÒÔÏû³ýÖØ¸´¡£
4.MavenÏîÄ¿½á¹¹µÄ¼¸ÖÖ¹¹½¨·½Ê½
1£©ÊÖ¶¯½¨Á¢mavenĿ¼
°²×°MavenÏîĿĿ¼Լ¶¨ÊÖ¶¯´´½¨¸÷¸öÎļþ¼Ð¼´¿É£¬Ò»°ã²»»áʹÓÃÕâÖÖ·½Ê½£»
2£©ÃüÁîÐÐmavenÃüÁî×Ô¶¯´´½¨mavenÏîÄ¿
±¾µØ´ÅÅ̽¨Á¢Ò»¸ö¿ÕĿ¼C:/maven/hello,ÃüÁîÐнøÈëµ½helloĿ¼£¬Ö´ÐÐÏÂÃæµÄÃüÁî
mvn archetype:generate -DgroupId =com.cloud.hellomaven
-DartifactId= hellomaven-service -Dversion =1.0.0-SNAPSHOT
-Dpackage= com.cloud.service

Ö´Ðгɹ¦µÄ»°»á×Ô¶¯ÔÚhelloÖд´½¨·ûºÏmavenÏîĿԼ¶¨µÄĿ¼½á¹¹¡£
˵Ã÷£º
archetype:generate£ºÉú³ÉmavenÏîÄ¿¹Ç¼Ü
DgroupIdÖ¸¶¨maven×ø±êµÄgroupId
DartifactIdÖ¸¶¨maven×ø±êµÄartifactId
DversionÖ¸¶¨maven×ø±êµÄversion
DpackageÖ¸¶¨mavenÏîÄ¿µÄsrcϵİüÃû
×Ô¶¯´´½¨µÄmavenÏîÄ¿½á¹¹ÈçÏÂ

3£©Eclipse IDE´´½¨mavenÏîÄ¿
EclipseÌṩÁËÒ»¸öºÜºÃµÄ²å¼þm2eclipseÎ޷콫MavenºÍEclipse¼¯³ÉÔÚÒ»Æð£¬ÅäÖòå¼þÑ¡Ôñ±¾µØmavenĿ¼ºÍÅäÖÃÎļþsetting.xml¼´¿É¡£
µã»÷Eclipse²Ëµ¥À¸File->New->Ohter->Maven£¬Ñ¡ÔñMaven
Project£¬Ò»Â·Ä¬ÈÏNext£¬ÓÐÒ»²½ÐèÒªÌîдGroup Id¡¢Artifact Id¡¢Version¡¢Ñ¡Ôñ´ò°ü·½Ê½Package£¨jar¡¢war¡¢pom£©£¬Ñ¡Ôñ±àÒë»·¾³¼´¿É

New Maven Project
Íê³ÉºóĿ¼½á¹¹ÈçÏÂ

Eclipse´´½¨µÄMavenÏîÄ¿½á¹¹
4£©Idea IDE´´½¨mavenÏîÄ¿
Idea IDEÊÇÒ»¿îºÜ²»´íµÄ¿ª·¢MavenÏîÄ¿µÄIDE£¬´´½¨Ò»¸ömaven webÏîÄ¿µÄ¹ý³ÌÈçÏ£º
Ñ¡ÔñFile-New-Project£¬Ñ¡ÔñMaven£¬¹´Ñ¡Create from archetype£¬Ñ¡Ôñmaven-archetype-webapp,

New Maven Project
µã»÷Next£¬ÌîдGroup Id¡¢Artifact Id¡¢VersionÈýÏî

µã»÷Next£¬Ñ¡ÔñMaven home£¬Ñ¡Ôñsetting file

Maven Home
µã»÷Next£¬ÌîдProject name£¬Ñ¡ÔñÏîĿ·¾¶¼´¿É

Project name
FinishÍê³Émaven webÏîÄ¿´´½¨
5.Pom.xmlÎļþ¼òµ¥½âÎö
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<!-- ×ÓÄ£¿é¶Ô¸¸Ä£¿éµÄ¼Ì³Ð,¼Ì³Ð¸¸Ä£¿éµÄËùÓÐÒÀÀµ --> <parent>
<groupId></groupId> <artifactId></artifactId>
<version></version> </parent>
<!-- Ö¸¶¨¶à¸öÄ£¿éÒ»Æð½øÐбàÒë --> <modules>
<module></module> </modules>
<!--groupId ·´Ð´µÄ¹«Ë¾ÍøÕ¾+ÏîÄ¿Ãû³Æ --> <groupId>com.demo.ssm</groupId>
<!--artifactId ÏîÄ¿Ãû³Æ+Ä£¿éÃû³Æ --> <artifactId>demo-ssm</artifactId>
<!--µÚÒ»¸ö0±íʾ´ó°æ±¾ºÅ
µÚ¶þ¸ö0±íʾ·ÖÖ§°æ±¾ºÅ
µÚÈý¸ö0±íʾС°æ±¾ºÅ 0.0.1
snapshot¿ìÕÕ alphaÄÚ²¿²âÊÔ beta¹«²â
ReleaseÎȶ¨°æ±¾ GAÕýʽ·¢²¼
--> <version>0.0.1-SNAPSHOT</version>
<!-- ĬÈÏÊÇjar ¿ÉÒÔÊÇwar jar pom --> <packaging>jar</packaging>
<!--ÏîÄ¿ÃèÊöÃû³Æ--> <name>demo-ssm</name>
<!--ÏîÄ¿µØÖ·--> <url>www.gseem.com</url>
<!--ÏîÄ¿ÃèÊö--> <description>ÕâÊÇÏîÄ¿ÃèÊö</description>
<!--¿ª·¢ÕßÁбí--> <developers>feiyue</developers>
<!--ÏîÄ¿Ðí¿ÉÖ¤--> <licenses></licenses>
<!--ÏîÄ¿×éÖ¯ÐÅÏ¢--> <organization></organization>
<!--ÏîÄ¿ÊôÐÔ--> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties> <!--ÏîÄ¿ÒÀÀµÁбí-->
<dependencies> <dependency>
<groupId>junit</groupId> <artifactId>junit</artifactId>
<version>4.9</version> <type></type>
<!-- ×÷Ó÷¶Î§ --> <scope>test</scope>
<!-- ÉèÖÃÒÀÀµÊÇ·ñ¿ÉÑ¡--> <optional></optional>
<!-- ÅųýÒÀÀµ´«µÝÁбí --> <exclusions>
<exclusion></exclusion> </exclusions>
</dependency> <dependency>
<groupId>com.demo.maven</groupId>
<artifactId>demo.maven</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency> </dependencies>
<!-- ÒÀÀµµÄ¹ÜÀí --> <dependencyManagement>
<dependencies> <dependency></dependency>
</dependencies> </dependencyManagement>
<build> <!-- ²å¼þÁбí --> <plugins>
<plugin> <groupId></groupId>
<artifactId></artifactId> <version></version>
</plugin> </plugins> </build>
</project>
|
|