博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
maven学习(5)-Maven 聚合与继承特性
阅读量:6714 次
发布时间:2019-06-25

本文共 11770 字,大约阅读时间需要 39 分钟。

接着上面的项目,

继承和聚合为了统一管理;
聚合:
有些项目中有很多小模块,可以合并到一起,将多个子项目可以统一管理,可以对user-dao,user-service进行统一管理(maven clean等。。),编译,测试等;使用modules把多个模块写进去;
继承:
可以看到user-service和user-web这两个项目里面pom添加的jar包,spring的jar包很多一样,版本一样,
很多重复了;
版本号都一样了,可以搞一个父类,然后将这些版本信息统一管理;不然项目多的话,版本多起来也是挺复杂;
 
新建user-parent项目,对user-dao和user-service统一管理(聚合),同时对user-dao和user-service、user-web中的jar进行统一版本管理:
新建user-parent,只要有一个pom.xml就行了,所以new maven project,create a simple project(跳过一些骨架选项);
group id: com.cy.user
artifact id:user-parent
version:0.0.1-SNAPSHOT
packaging:pom
 
user-parent项目下,只有一个pom.xml就行了:
 
将user-dao、user-service、user-web中的依赖包都复制到user-parent中来,统一定义版本;user-dao、service、web项目pom.xml就不需要写版本号了;
 
 
pom.xml:
4.0.0
com.cy.user
user-parent
0.0.1-SNAPSHOT
pom
../user-dao
../user-service
4.1.7.RELEASE
4.12
1.2.17
org.mybatis
mybatis
3.3.0
mysql
mysql-connector-java
5.1.22
log4j
log4j
${log4j.version}
junit
junit
${junit.version}
test
org.springframework
spring-core
${spring.version}
org.springframework
spring-beans
${spring.version}
org.springframework
spring-tx
${spring.version}
org.springframework
spring-context
${spring.version}
org.springframework
spring-context-support
${spring.version}
org.springframework
spring-web
${spring.version}
org.springframework
spring-webmvc
${spring.version}
org.springframework
spring-aop
${spring.version}
org.springframework
spring-aspects
${spring.version}
org.springframework
spring-jdbc
${spring.version}
org.mybatis
mybatis-spring
1.2.3
javax.servlet
javax.servlet-api
3.1.0
javax.servlet.jsp
javax.servlet.jsp-api
2.3.1
javax.servlet
jstl
1.2

user-dao/pom.xml:

4.0.0
com.cy.user
user-parent
0.0.1-SNAPSHOT
../user-parent/pom.xml
user-dao
jar
UTF-8
org.mybatis
mybatis
mysql
mysql-connector-java
log4j
log4j
junit
junit
test

user-service/pom.xml就变成了:

4.0.0
com.cy.user
user-parent
0.0.1-SNAPSHOT
../user-parent/pom.xml
user-service
jar
UTF-8
org.springframework
spring-core
org.springframework
spring-beans
org.springframework
spring-tx
org.springframework
spring-context
org.springframework
spring-context-support
org.springframework
spring-web
org.springframework
spring-webmvc
org.springframework
spring-aop
org.springframework
spring-aspects
org.springframework
spring-jdbc
org.mybatis
mybatis-spring
junit
junit
test
com.cy.user
user-dao
0.0.1-SNAPSHOT

user-web/pom.xml就变成了:

4.0.0
com.cy.user
user-parent
0.0.1-SNAPSHOT
../user-parent/pom.xml
user-web
war
javax.servlet
javax.servlet-api
javax.servlet.jsp
javax.servlet.jsp-api
javax.servlet
jstl
org.springframework
spring-core
org.springframework
spring-beans
org.springframework
spring-tx
org.springframework
spring-context
org.springframework
spring-context-support
org.springframework
spring-web
org.springframework
spring-webmvc
com.cy.user
user-service
0.0.1-SNAPSHOT
junit
junit
test
user-web

 

查看项目下的maven dependencies依赖jar包,版本都是从user-parent继承下来的;
 
运行项目,http://localhost:8080/user-web/index.jsp,正常访问ok;
 
tips:
运行项目出了点问题,把user-dao下面的com.cy.user.mappers包移到src/main/resources下面去了;因为xml不是java文件,编译的时候没编译进去,插件支持的不是很好;
 
 
 
 
 
------

转载于:https://www.cnblogs.com/tenWood/p/8638434.html

你可能感兴趣的文章
我的友情链接
查看>>
SequoiaDB 笔记
查看>>
lduan HyPer-V 网络存储(三)
查看>>
SSH 命令行参数详解【英】
查看>>
DNS服务器
查看>>
notify与notifyAll的区别
查看>>
Java读取文件方法大全
查看>>
Java学习lesson 08
查看>>
MarkDown入门
查看>>
项目经理 与 敏捷开发
查看>>
安卓软件开发你知道需要学什么吗,看这里?
查看>>
必读的Python入门书籍,你都看过吗?(内有福利)
查看>>
alibaba.fastjson 乱序问题
查看>>
django 反向关联--blog.entry_set.all()查询
查看>>
网工之路
查看>>
linux 查看发行版本信息
查看>>
数据结构之二叉树遍历
查看>>
Linux rpm 命令参数使用详解[介绍和应用]
查看>>
tr的使用详解
查看>>
CentOS 6.4下PXE+Kickstart无人值守安装操作系统
查看>>