[2025.2.14 JavaWeb学习]maven

Maven

基本介绍

  • 是一款用于管理和构建java项目的工具
  • 1、方便管理项目依赖的资源(jar包),避免版本冲突问题
  • 2、统一的项目结构

image

  • 标准跨平台的自动化项目构建方式(清理、编译、测试、打包、发布),编译后文件存放在target目录下
  • 仓库:用于存储资源,管理各种jar包
    • 本地仓库:自己本机上的一个目录
    • 中央仓库:由Maven团队维护的全球唯一的,连接外服,从中央仓库下载包到本地仓库会比较慢
    • 远程仓库(私服):一般由公司团队搭建的私有仓库,可作为中继,提升下载速度

image

-PS:2024IDEA构建Maven模板注意事项:这里我是选择了maven-archetype-quickstart模板进行构建,目录与上述图片一致,包含main和test

  • 坐标:
    • Maven中的坐标是资源的唯一标识,通过该坐标可以唯一定位资源位置
    • 使用坐标来定义项目或引入项目中需要的依赖
    • 组成:
      • groupid:定义maven项目隶属组织名称(通常为域名反写)
      • artifactid:定义当前maven项目名称(通常是模块名称)
      • version:定义当前项目版本号
        image





依赖配置

  • 指当前项目运行所需要的jar包,一个项目可引入多个依赖
  • 在使用<dependency>标签进行引入,定义包的坐标
  • maven依赖具有传递性:
    • 直接依赖:当前项目直接配置的依赖
    • 间接依赖:A依赖B,B依赖C,则A间接依赖C
  • 排除依赖:指主动断开依赖的资源,无需指定版本,在dependency中加入<exclusions>标签进行多个依赖的排除
  • 依赖范围:依赖的jar包,默认情况下,可以在任何地方使用,可以通过<scope>设置作用范围:
    • 三种有效:
      • 主程序有效
      • 测试范围有效
      • 是否参与打包运行
    • 四种取值:

image

  • 生命周期:为了对所有maven项目构建过程进行抽象和统一,Maven中有三套相互独立的生命周期
    • clean:清理工作
    • default:核心工作,如:编译、测试、打包、安装、部署等
    • site:生成报告、发布站点等
    • 每套生命周期有一些阶段,阶段是有顺序的,后面的阶段依赖于前面的阶段,同一套生命周期中,当运行后面的阶段时,前面的阶段都会运行
    • 可使用IDEA或者命令行mvn step进行阶段测试
posted @ 2025-02-14 04:03  Luna-Evelyn  阅读(28)  评论(0)    收藏  举报