多模块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,无视就好):
这里写图片描述

1.1打开tbmaven-root项目中的pom.xml,并将Packaging改为pom
这里写图片描述

2.创建maven各个模块(注意各个模块的继承和依赖关系,这里以tbmaven-service为例):
这里写图片描述
这里写图片描述
这里写图片描述

2.1创建完之后,tbmaven-root中会出现
这里写图片描述

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

这里写图片描述

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

这里写图片描述

2.2因为tbmaven-service依赖tbmaven-util,tbmaven-dao和tbmaven-entity,所以需要在tbmaven-service的pom中添加下面一段依赖
这里写图片描述

注:
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
这里写图片描述

注:tbmaven-web的pom中的Packaging不是jar而是war,在上面maven结构图中也写到了。
这里写图片描述

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

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

1.tbmaven-web目录不全
这里写图片描述
解决办法:右键web项目–>Properties–>Java Build Path–>Libraries–>Add Library–>Server Runtime,然后把tomcat添加进来就可以了。

2.初学者最容易犯的一个错误
这里写图片描述
在发布项目的时候一定要把上面红框框的部分Remove掉,不然项目会发布不成功。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值