JavaWeb 课堂笔记 —— 06 Maven

发布于:2025-04-10 ⋅ 阅读:(30) ⋅ 点赞:(0)

本系列为笔者学习JavaWeb的课堂笔记,视频资源为B站黑马程序员出品的《黑马程序员JavaWeb开发教程,实现javaweb企业开发全流程(涵盖Spring+MyBatis+SpringMVC+SpringBoot等)》,章节分布参考视频教程,为同样学习JavaWeb系列课程的同学们提供参考。

01 什么是 Maven ?

Mavenapache旗下的一个开源项目,是一款用于管理和构建java项目的工具,其基于项目对象模型(POM)的概念,通过一小段描述信息来管理项目。

在这里插入图片描述

02 Maven 的作用 ?

① 方便的依赖管理

方便快捷的管理项目依赖的资源(jar包),避免版本冲突问题

在这里插入图片描述

② 统一的项目结构

提供标准、统一的项目架构

在这里插入图片描述

③ 标准化的项目构建流程

标准跨平台(Linux、Windows、MacOS)的自动化项目构建方式

在这里插入图片描述

03 Maven 概述

在这里插入图片描述

在这里插入图片描述

04 Maven 安装

在这里插入图片描述

在这里插入图片描述

05 IDEA 集成 Maven

① 配置Maven环境

在这里插入图片描述

② 创建Maven项目

在这里插入图片描述

在这里插入图片描述

注:Maven坐标

在这里插入图片描述

③ 导入Maven项目

在这里插入图片描述

06 Maven 依赖管理

① 依赖配置

依赖是指当前项目运行所需要的jar包,一个项目中可以引入多个依赖。

在这里插入图片描述

<dependencies>
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
            <version>1.2.10</version>
        </dependency>
</dependencies>

注:如果引入的依赖在本地仓库不存在,将会连接远程仓库/中央仓库,然后下载依赖,artifact人工制品。

② 依赖传递

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

③ 依赖范围

依赖的jar包,默认可在任何地方使用,通过<scope>...</scope>设置其作用范围。

  • 主程序范围有效(main文件夹范围内)
  • 测试程序范围有效(test文件夹范围内)
  • 是否参与打包运行(package指令范国内)

在这里插入图片描述

④ 生命周期

Maven的生命周期就是为了对所有的maven项目构建过程进行抽象和统一,每套生命周期包含一些阶段(phase),阶段是有顺序的,后面的阶段依赖于前面的阶段。

Maven中有3套相互独立的生命周期:

  • clean:清理工作
  • default:核心工作,如:编译、测试、打包、安装、部署等
  • site:生成报告、发布站点等

在这里插入图片描述

在这里插入图片描述

注:在同一套生命周期中,当运行后面的阶段时,前面的阶段都会运行,compile汇编、编译,site站点。

执行指定生命周期的两种方式:

  • idea中,右侧的maven工具栏,选中对应的生命周期,双击执行
  • 在命令行中,通过命令执行

的阶段时,前面的阶段都会运行,compile汇编、编译,site站点。

执行指定生命周期的两种方式:

  • idea中,右侧的maven工具栏,选中对应的生命周期,双击执行
  • 在命令行中,通过命令执行

在这里插入图片描述