maven中的三種工程:html
1.pom工程:用在父級工程或聚合工程中。用來作jar包的版本控制。web
2.war工程:將會打包成war,發佈在服務器上的工程。如網站或服務。瀏覽器
3.jar工程:將會打包成jar用做jar包使用。服務器
以淘淘商城爲例:maven
一. pom工程工具
1. taotao-parent:post
taotao-parent是整個項目的父工程,它是一個pom工程。用來作整個項目的版本控制,也就是項目中全部要使用到的jar包的版本都集中由父工程管理。這樣你在寫其餘工程pom文件中maven依賴時就不須要寫版本號了。固然全部的項目都要先繼承它才行。flex
2.taotao-manager:網站
建立taotao-manager用來作聚合工程,它也是一個pom工程。建立四個model分別是taotao-manager-pojo,taotao-manager-dao,taotao-manager-service,taotao-manager-web,同時會自動生成4個獨立的maven工程。聚合工程只是用來幫助其餘模塊構建的工具,自己並無實質的內容。具體每一個工程代碼的編寫仍是在生成的工程中去寫。編碼
2.1.使用聚合工程taotao-manager的意義就是:本來這些模塊也是一個個獨立的工程,如今將它們聚合到taotao-manager中,這樣咱們構建項目的時候就只要構建taotao-manager一個就好了。咱們只要使用maven構建這個聚合工程taotao-manager就好了而不用去操心模塊的構建,好比install時只要install taotao-manager就行。總之就是簡化操做。正常的編碼工做仍是在對應的taotao-manager-pojo,taotao-manager-dao,taotao-manager-service,taotao-manager-web。工程中進行的。
二. war工程
1.taotao-rest,taotao-portal這些
這些工程都是要部署在服務器上的,因此要打包成war形式。這些工程有的是用戶經過瀏覽器直接訪問,有的是經過發佈服務被別的工程調用。
三.jar工程
3.taotao-common
這個就是打包成jar的工程。它就是存放一些其餘工程都會使用的類,工具類。咱們能夠在其餘工程的pom文件中去引用它,和引用別的jar包沒什麼區別。
<dependency><groupId>com.taotao</groupId><artifactId>taotao-common</artifactId><version>0.0.1-SNAPSHOT</version></dependency>