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>