QUESTION:Maven:解决jar包冲突和企业开发常用编写
目录
QUESTION:Maven:解决jar包冲突和企业开发常用编写
ANSWER:
一:Maven的作用
二:解决jar包冲突:
三:版本锁定:
ANSWER:
一:Maven的作用
Maven是一项项目管理工具,但又不单单是只管理项目,它可以构建不同工程项目。
1.节省磁盘空间
2.可以一键构建
3.可以跨平台
4.应用在大型项目时可以提高开发效率
常见命令:
Compile
Test
Package
Install
Deploy
Clean
书写规范:
groupId 公司或组织域名的倒序
artifactId 项目名或模块名
version 版本号
依赖范围:
Compile
Test
Runtime
Provided
二:解决jar包冲突:
1、第一声明者优先原则
在 pom 文件定义依赖,先声明的依赖为准。
2、路径近者优先原则
例如:还是上述情况,spring-contex 和 spring-webmvc 都会传递过来 spirng-beans,那
如果直接把 spring-beans 的依赖直接写到 pom 文件中,那么项目就不会再使用其他依赖传
递来的 spring-beans,因为自己直接在 pom 中定义 spring-beans 要比其他依赖传递过来的路 径要近。
3.上边的问题也可以通过排除依赖方法辅助依赖调解。
三:版本锁定:
面对众多的依赖,有一种方法不用考虑依赖路径、声明优化等因素可以采用直接锁定版
本的方法确定依赖构件的版本,版本锁定后则不考虑依赖的声明顺序或依赖的路径,以锁定 的版本的为准添加到工程中,此方法在企业开发中常用。
注意:在工程中锁定依赖的版本并不代表在工程中添加了依赖,如果工程需要添加锁定版本 的依赖则需要单独添加<dependencies></dependencies>标签。