ä¼çå°å¸¸å¸¸çè¾åºï¼æå¾å¤å¯ç¨çArchetypeä¾éæ©ï¼æ¯ä¸ä¸ªArchetypeåé¢é½æä¸ä¸ªå¯¹åºçç¼å·ï¼åæ¶
å½ä»¤è¡ä¼æä¾ä¸ä¸ªé»è®¤çç¼å·ï¼å
¶å¯¹åºçArchetype为maven-archetype-quickstartï¼å车éæ©è¯¥Archetype:
ç´§æ¥çMavenä¼æ示è¾å
¥è¦å建项ç®çgroupId,artifactId,versionåå
åpackageï¼
Archetypeä¼æ ¹æ®è¾å
¥çä¿¡æ¯å建项ç®éª¨æ¶ãå¨å½åç®å½ä¸ï¼å建ä¸ä¸ªå为hellomvnï¼å®ä¹çartifactIdï¼çåç®å½ï¼ä»ä¸å¯ä»¥çå°é¡¹ç®çåºæ¬ç»æï¼åºæ¬çpom.xmlï¼ä»£ç ç®å½src/main/javaï¼åæ¶å
å«ä¸ä¸ªjavaç±»ï¼com.mvntest.hellomvn.core.Appãæµè¯ä»£ç ç®å½src/test/javaï¼ä¹å
å«ä¸ä¸ªæµè¯Javeç±»com.mvntest.hellomvn.core.AppTestã
ä¸ä¸ªé¡¹ç®çåºæ¬éª¨æ¶çæã
Archetype
å¯ä»¥è®²Archetypeç解æMaven项ç®ç模æ¿ï¼ä¾å¦maven-archetype-quickstartå°±æ¯æç®åçMaven项ç®æ¨¡æ¿ï¼åªéæä¾åºæ¬çå
ç´ ï¼å¦groupId,artifactId,versionçï¼å®å°±è½çæ项ç®çåºæ¬ç»æåPOMæ件ã
Maven Archetype Plugin
使ç¨Archetypeçä¸è¬æ¥éª¤
å½ä»¤ââmvn archetype:generate
è¾å
¥å½ä»¤åï¼Archetypeæ件ä¼è¾åºä¸ä¸ªArchetypeå表ä¾ç¨æ·éæ©ï¼éæ©èªå·±æ³è¦ä½¿ç¨çArchetypeï¼è¾å
¥å¯¹åºç¼å·
æ示è¾å
¥ä¸äºåºæ¬åæ°ï¼å¦groupId,artifactId,version,packageç
Archetypeæ件çæ项ç®éª¨æ¶
常ç¨Archetype
maven-archetype-quickstart
é»è®¤çArchetype,åºæ¬å
容å
æ¬ï¼
ä¸ä¸ªå
å«junitä¾èµå£°æçpom.xml
src/main/java主代ç ç®å½åä¸ä¸ªå为Appçç±»
src/test/javaæµè¯ä»£ç ç®å½åä¸ä¸ªå为AppTestç
æµè¯ç¨ä¾maven-archetype-webapp
ä¸ä¸ªæç®åçMaven war项ç®æ¨¡æ¿ï¼å½éè¦å¿«éå建ä¸ä¸ªWebåºç¨çæ¶åå¯ä»¥ä½¿ç¨å®ãçæç项ç®å
容å
æ¬ï¼
ä¸ä¸ªpackaging为warä¸å¸¦æjunitä¾èµå£°æçpom.xml
src/main/webapp/ç®å½
src/main/webapp/index.jspæ件
src/main/webapp/WEB-INF/web.xmlæ件
å建èªå·±çArchetype
Archetype Catalog
Catalogç¨æ¥æå®maven-archetype-plugin读åarchetype-catalog.xmlæ件çä½ç½®ï¼
internalââmaven-archetype-pluginå
ç½®ç
localââæ¬å°çï¼ä½ç½®ä¸º~/.m2/archetype-catalog.xml
remoteââæåMavenä¸å¤®ä»åºçCatalog
file://
http://