JavaWeb——后端之maven
2024-01-07 23:35:10
三、后端Web开发
1. Maven
1.1 概念
概念: 一款用于管理和构建java项目的工具,是apache下的一个开源项目
作用:
- 依赖管理:jar包,避免版本冲突问题——不用手动导jar包,只需要在配置文件(pom.xml)中描述依赖信息,maven会自动联网下载——是基于项目对象模型(Project object model,POM)的概念,通过一小段描述信息来管理项目的构建。
- 统一项目结构:提供标准、统一的项目结构,不同的开发工具都可以进行开发操作
- 项目构建:标准跨平台的自动化项目构建方式
1.2 依赖管理
1)依赖配置
依赖: 指的是当前项目运行所需要的jar包,一个项目中可以引入多个依赖
配置:
- 在pom.xml中编写<dependencies>标签
- 在<dependencies>标签中,使用<dependency>引入坐标
- 定义坐标的groupId, artifactId, version——https://mvnrepository.com/
- 点击刷新按钮,引入最新加入的坐标
2)依赖传递
项目依赖的依赖会被自动导入
依赖分类:
- 直接依赖:在当前项目中通过依赖配置建立的依赖关系
- 间接依赖:被依赖的资源如果依赖其他资源,当前项目间接依赖其他资源
排除依赖:主动断开依赖的资源,被排除的资源不需要指定版本
<exclusions>
? <exclusion>
? <groupId>XXX</groupId>
? <artifactId>XXX</artifactId>
? </exclusion>
</exclusions>
3)依赖范围
默认情况: 可以在任何地方使用(主程序范围内,测试程序范围内,是否参与打包运行(package指令范围内))。
可以通过<scope>XXX</scope>设置其作用范围
scope值 | 主程序 | 测试程序 | 打包(运行) | 范例 |
---|---|---|---|---|
compile(默认) | √ | √ | √ | log4j |
test | × | √ | × | junit |
provided | √ | √ | × | servlet-api |
runtime | × | √ | √ | jdbc驱动 |
4)生命周期
对所有的maven项目构建过程进行抽象和统一
3套相互独立的生命周期——每套生命周期包含一些阶段,阶段是有顺序的,后面的阶段依赖于前面的阶段,同一套生命周期中,当后面的阶段运行时,前面的阶段都会运行
- clean: 清理工作
- default: 核心工作,如:编译、测试、打包、安装、部署等
- site: 生成报告、发布站点等
clean:移除上一次构建生成的文件
compite:编译项目源代码
test:使用合适的单元测试框架运行测试
package:将编译后的文件打包
install:安装项目到本地仓库
执行方式
- 双击maven项目中Lifecycle目录下的生命周期
- 在命令行中输入指令mvn 要执行的生命周期
本质
生命周期是个虚拟的概念,实际上每个操作都是由插件完成的
【未完待续……maven高级部分】
文章来源:https://blog.csdn.net/qq_44689664/article/details/135395735
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!