在項目過程當中,咱們一般創建一套目錄結構後,須要一種方式使另外的項目也遵循這個規則,針對這種狀況,maven提出了archetype的概念。因爲官方或者第三方的骨架都不知足咱們的要求,咱們但願獲得的目錄結構以下圖java
咱們創建的目錄結構:web
src/main/javawindows
src/main/resourcesapp
src/main/webappeclipse
src/test/javawebapp
src/test/resourcesmaven
在項目目錄下,打開cmd,mvn archetype:create-from-project 這樣從該項目生成了骨架url
此時在項目的target\generated-sources\archetype下生成了新的骨架文件,spa
在target\generated-sources\archetype執行 mvn clean install則將骨架文件install到本地倉庫了server
至此可使用這個骨架來重構項目。
使用mvn archetype:generate -DarchetypeCatalog=local來生成新項目
在target\generated-sources\archetype執行mvn deploy 則將骨架上傳到私服
如下注意:
<distributionManagement>
<repository>
<id>releases</id>
<name>releases</name>
<url>http://127.0.0.1:8081/nexus/content/repositories/releases/</url>
</repository>
<snapshotRepository>
<id>snapshots</id>
<name>snapshots</name>
<url>http://127.0.0.1:8081/nexus/content/repositories/snapshots/</url>
</snapshotRepository>
</distributionManagement>
<server>
<id>releases</id>
<username>admin</username>
<password>admin123</password>
</server>
<server>
<id>snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
pom和settings的ID須要一致
不然沒法發佈到私服
發佈到私服後,能夠在eclipse中使用,步驟以下
設置catalog file 爲http://127.0.0.1:8081/nexus/content/groups/public/archetype-catalog.xml
描述隨便寫例如:test-webapp