多模块Maven项目的快速构建

多模块Maven项目的快速构建

Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。

这里不介绍Maven的安装和配置,很简单,网上大把都有安装配置示例,这里只演示如何快速构建一个Maven项目。

一个简单的Maven模块结构是这样的:

---- app-root
    |-- pom.xml (pom)
    |
    |-- app-util:工具类,所有工具类都提取出来写在这个项目中。
    |        |-- pom.xml (jar)
    |
    |-- app-entity:数据模型,与数据库表字段对应的实体类。
    |        |-- pom.xml (jar)   
    | 
    |-- app-dao:数据持久层,操作底层数据库。
    |        |-- pom.xml (jar)
    |
    |-- app-service:核心业务项目,主要是Service处理业务逻辑。
    |        |-- pom.xml (jar)
    |
    |-- app-web:这个就是整个项目的web层了,页面的显示以及控制层。
             |-- pom.xml (war)    

注:创建这些项目的时候,只有app-web是web项目即maven的:maven-archetype-webapp,其他的都是java项目:maven-archetype-quicktart

下面是各个模块的继承和依赖关系(箭头表示依赖):

  • 所有模块都继承app-root父模块
  • app-dao –> app-entity
  • app-service –> app-dao
  • app-web –> app-service
  • app-service –> app-util
  • app-web –> app-util

下面开始创建一个多模块的Maven项目

1.在eclipse中创建一个maven项目(个人原因手贱先创建了所以重名了不能点Next,无视就好):
多模块Maven项目的快速构建_第1张图片

1.1打开tbmaven-root项目中的pom.xml,并将Packaging改为pom
多模块Maven项目的快速构建_第2张图片

2.创建maven各个模块(注意各个模块的继承和依赖关系,这里以tbmaven-service为例):
多模块Maven项目的快速构建_第3张图片
多模块Maven项目的快速构建_第4张图片
多模块Maven项目的快速构建_第5张图片

2.1创建完之后,tbmaven-root中会出现
多模块Maven项目的快速构建_第6张图片

这是因为eclipse自动在父模块的pom中添加了下面的代码

多模块Maven项目的快速构建_第7张图片

而tbmaven-service因为继承了tbmaven-root,所以eclipse会在tbmaven-service的pom中加上如下代码

这里写图片描述

2.2因为tbmaven-service依赖tbmaven-util,tbmaven-dao和tbmaven-entity,所以需要在tbmaven-service的pom中添加下面一段依赖
多模块Maven项目的快速构建_第8张图片

注:
1.由于tbmaven-dao依赖了tbmaven-entity,那么tbmaven-service也间接依赖了tbmaven-entity,所以我们这里没有显示的依赖tbmaven-entity
2.${project.version}表示的是一个属性引用,指向了POM的project/version的值,也就是这个POM对应的version。由于tbmaven-service的version继承于tbmaven-root,因此它的值就是1.0-SNAPSHOT。而tbmaven-util也继承了这个值,因此在所有这些项目中,我们做到了保持版本一致。

3.创建tbmaven-web模块,创建web模块跟创建entity模块的方法是一样的,不同的是下面这个地方要选择maven-archetype-webapp
多模块Maven项目的快速构建_第9张图片

注:tbmaven-web的pom中的Packaging不是jar而是war,在上面maven结构图中也写到了。
多模块Maven项目的快速构建_第10张图片

到此就搭建好了企业级多模块的项目环境了。

注:搭建Maven项目时出现的问题:

1.tbmaven-web目录不全
多模块Maven项目的快速构建_第11张图片
解决办法:右键web项目–>Properties–>Java Build Path–>Libraries–>Add Library–>Server Runtime,然后把tomcat添加进来就可以了。

2.初学者最容易犯的一个错误
多模块Maven项目的快速构建_第12张图片
在发布项目的时候一定要把上面红框框的部分Remove掉,不然项目会发布不成功。

你可能感兴趣的:(maven)