Maven 通过maven对项目进行拆分、聚合(重点)
对现在已有maven ssh项目进行拆分,拆分思路:将dao层的代码已经配置文件全体提取出来到一个表现上独立的工程中。同样service、action拆分。
ssh-parent: 父工程
ssh-dao:(子模块)
ssh-service
ssh-web
拆分完成对拆分后的项目进行聚合,提出概念父工程
1.1 创建父工程
创建好父工程目录结构:只有pom.xml,可以推断父工程不进行编码。
1、 项目需要的依赖的信息,在父工程中定义,子模块继承过程
2、 将各个子模块聚合到一起
1.1 将创建父工程发布到本地仓库
将来service、dao工程发布到本地仓库。发布的service工程会报错。
如果忘记此步骤,将父工程发布到本地仓库。
1.1 创建子模块ssh-dao
Ssh-dao负责数据访问层:包含dao相关代码&配置文件
1.1.1 将spring的配置文件拆分
1.1 创建子模块ssh-service
将ssh-dao工程打包到本地仓库;
在service工程pom.xml文件添加ssh-dao的依赖
1.1.1 单元测试
1、 批量加载spring配置文件
a) classpath:spring/applicationContext-*.xml
b) classpath*:spring/applicationContext-*.xml:既要加载本项目中配置文件,还要加载jar包中配置文件
2、 传递依赖范围(了解)
A:ssh-service 工程
B:ssh-dao工程
C:junit单元测试
总结:当项目中需要的某一个依赖没有传递过来。在自己工程中添加对应依赖就可以。
不一定要把前面的依赖都修改一遍,直接在自己模块添加进来即可。
1.1 创建子模块ssh-web:war
在ssh-web项目中添加service工程依赖。
Web.xml
1.1 运行方式
Maven方式:
方式1:运行父工程。父工程将各个子模块聚合到一起。将ssh-web打war包发布到tomcat
方式2:直接运行web工程
其他方式:
部署到tomcat
Maven 通过maven对项目进行拆分、聚合(重点)的更多相关文章
- maven(二) maven项目构建ssh工程(父工程与子模块的拆分与聚合)
前一节我们明白了maven是个什么玩意,这一节就来讲讲他的一个重要的应用场景,也就是通过maven将一个ssh项目分割为不同的几个部分独立开发,很重要,加油 --WH 一.maven父工程与子模块的拆 ...
- Maven项目的拆分与聚合
---------------------siwuxie095 Maven 项目的拆分与聚合 1.对已有的 Ma ...
- 转帖:maven(二) maven项目构建ssh工程(父工程与子模块的拆分与聚合)
出处:http://www.cnblogs.com/whgk/p/7121336.html 前一节我们明白了maven是个什么玩意,这一节就来讲讲他的一个重要的应用场景,也就是通过maven将一个ss ...
- 使用maven来管理java项目
初学maven,简单总结一下学习心得,若有不对的地方,欢迎各位大神给我指正~ 总结分为6个部分 maven概述 maven安装 maven项目结构和创建方法 maven配置文件settings.xml ...
- 【Maven】使用Maven构建多模块项目
Maven多模块项目 Maven多模块项目,适用于一些比较大的项目,通过合理的模块拆分,实现代码的复用,便于维护和管理.尤其是一些开源框架,也是采用多模块的方式,提供插件集成,用户可以根据需要配置指定 ...
- 从头开始基于Maven搭建SpringMVC+Mybatis项目(1)
技术发展日新月异,许多曾经拥有霸主地位的流行技术短短几年间已被新兴技术所取代. 在Java的世界中,框架之争可能比语言本身的改变更让人关注.近几年,SpringMVC凭借简单轻便.开发效率高.与spr ...
- 解放双手 | Jenkins + gitlab + maven 自动打包部署项目
前言 记录 Jenkins + gitlab + maven 自动打包部署后端项目详细过程! 需求背景 不会偷懒的程序员不是好码农,传统的项目部署,有时候采用本地手动打包,再通过ssh传到服务器部署运 ...
- maven 配置多模块项目 pom modules
所有用Maven管理的真实的项目都应该是分模块的,每个模块都对应着一个pom.xml.它们之间通过继承和聚合(也称作多模块,multi-module)相互关联.那么,为什么要这么做呢?我们明明在开发一 ...
- maven课程 项目管理利器-maven 3-10 maven聚合和继承 4星
本节主要讲了以下内容: 1 maven聚合 2 maven继承 1 maven聚合 <!-- 聚合特有标签 --> <groupId>com.hongxing</grou ...
随机推荐
- IDEA和WebStorm破解教程--激活n年(随时更新)
首先,打开蓝雨的官网--->http://idea.lanyus.com/,找到这个jar包 之后,去官网下载IDEA--->https://www.jetbrains.com/idea ...
- echarts 调整图表大小的方法
第一次使用Echarts,大小用的不是那么随心应手,通过文档和百度出的结果,发现其实很简单: 内部图表大小是与div容器大小相关的,如果想调整图表大小,调整div就可以了 如果是想调整图表与div间上 ...
- xp与win7双系统时删除win7启动菜单
1.提取Win7安装光盘中,boot目录下的[bootsect.exe]到其它盘中,备用! 2 2.启动到WinXP或者WinPE或者Dos中,只要是能执行dos命令的地方就可以 3 3.cmd下进入 ...
- saltstack API(一) 安装并测试
python3 安装api # 首先安装python3 .tgz cd Python- . ./configure make make install mv /usr/bin/python /usr/ ...
- Linux top、VIRT、RES、SHR、SWAP(S)、DATA Memory Parameters Detailed
catalog . Linux TOP指令 . VIRT -- Virtual Image (KB) . RES -- Resident size (KB) . SHR -- Shared Memor ...
- Linxu系统下JDK1.7(rpm)安装
一.JDK下载地址: https://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html 二.查看 ...
- JAVA核心技术I---JAVA基础知识(不可变对象和字符串)
一:不可变对象 不可变对象(Immutable Object) –一旦创建,这个对象(状态/值)不能被更改了–其内在的成员变量的值就不能修改了. –典型的不可变对象 • 八个基本型别的包装类的对象 • ...
- bootstrap实现checkbox全选、取消全选
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <!-- 最新版本的 ...
- 批量获取oracle的表和表字段注释【原】
批量获取oracle的表和表字段注释 --用户表注释表 SELECT * FROM USER_TAB_COMMENTS WHERE TABLE_NAME LIKE 'WEB_ISC_%'; --显示指 ...
- Golang入门教程(十)内建函数
比较常用的内建函数 参考: http://blog.csdn.net/liumiaocn/article/details/54804074