Maven基础使用
什么是Maven
Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的项目管理工具软件(百度百科)
使用Maven的优势
1、约定由于配置
2、简单
3、测试支持
4、构建简单
5、CI(持续集成)
6、插件丰富
安装和使用
1、https://maven.apache.org/download.cgi
2、yum安装完成后安装路径:/usr/share/maven 执行bin路径:/bin
3、目录结构
a) /bin 运行文件
b) /boot maven在运行自己命令时候类加载器
c)/conf/settings.xml(每个配置写一个demo 约定优于配置) 全局配置文件
d) /lib 依赖包
4、超级pom
/lib/maven-model-builder.jar!org/apache/maven/model/pom-4.0.4.xml 定义
5、settings.xml文件加载顺序
~/.m2/settings.xml----->conf/settings.xml
settings.xml文件结构
1、localRepository:资源包加载路径
2、pluginGroups:插件注册
3、servers:私服登录时用户名密码配置
4、mirrors:仓库镜像
5、profiles:不同环境变量配置
pom.xml文件解析
基础元素
1、modelVersion:参考超级pom
2、groupId:一般域名倒写
3、artifactId:功能命名
4、version:版本号
5、packaging:打包方式 默认jar
依赖相关
dependencyManagement
作用:统一版本号、声明(子pom里面用到再引用)
约定:只能出现在父pom
dependency 依赖引用
type 默认jar
scope:定义jar包何时使用、指定是否打包输出
包括:
complie 默认 编译 会打包输出
test 测试 不会打包输出
provided 编译时应用 不会打包输出 例如servlet
runtime 运行时有效 例如:jdbc驱动实现,编译时接口实现已经在 spring-jdbc里面定义 会打包输出
system 本地jar包引用
exclusions:排除包
依赖传递
A引用B、B引用C--->A引用C
依赖仲裁
最短路径原则:A依赖B和C,B依赖E1,C依赖D,D依赖E2------>A依赖E1
加载先后原则:A依赖C和B,C依赖E1,B依赖E2----->A依赖E1 (C、B书写顺序)
生命周期:clean-->default-->site
clean
pre-clean::->clean::->post-clean
default
compile::->package::->install::->deploy
site
pre-site::->site::->post-sitee::->site-deploy
常用插件
1、versions 统一升级版本号
mvn versions:set -DnewVersion=1.2

浙公网安备 33010602011771号