• maven简单总结


    目录

    基本概念

    maven仓库

    maven的jar包依赖的传递性

    理解

    maven目录结构

    maven提倡约定优于配置

    maven的三种工程

    maven命令

    项目的生命周期

    maven的使用

    下载maven

    配置settings.xml文件

    设置本地仓库地址(存放我们的jar包)

    mirrors内切换镜像仓库地址

    maven在idea中的配置使用

    基本概念

    maven作用:管理jar包:下载、编译、保存、更新

    坐标:存放jar包的路径

    依赖:A jar包可能会依赖好多jar包,maven会管理所有的jar包

    maven仓库

    • 远程仓库:也称中央仓库,本质上就是一个国外网址
    • 镜像仓库:就是一个国内的网址,已经帮你下载好了jar包
    • 本地仓库:本质上就是你自己创建的一个文件夹,存放下载好的jar包

    maven的jar包依赖的传递性

    含义:maven的jar包内部会有一些依赖项,引入某些jar包可以自动依赖其他jar包

    理解

    1. 用户添加jar包时,maven会根据jar包的坐标去本地仓库查找指定的jar包文件
    2. 找到jar包,并且实现jar包文件依赖
    3. 同时加载当前目录下的pom文件,通过标签加载其他依赖项
    4. 循环执行上述的操作,直到所有的jar包依赖完成位置

    maven目录结构

      

    maven提倡约定优于配置

    项目代码放在mian下,测试代码放在test下,源代码放在java下,资源文件放在resources里;项目代码管理结构清晰,分工明确,各归其位,便于管理,最终便于程序的自动化;maven命令能一键执行其核心要点就依赖于此,maven如此,spring/springboot亦然

    maven的三种工程

    • pom工程:用在父工程或者聚合工程中,用来做jar包的版本控制
    • war工程:web工程将会打包成war包发布到服务器上的和工程
    • jar工程:别人写好的一些类你若使用将会打包成jar包,引入到你的项目中

    maven命令

    • compile:编译命令,会在你的项目目录下生成一个target目录,在该目录中会包含一个classes文件夹,里面全是生成的class文件
    • package:这个命令会在你的项目路径下生成一个target目录,并且拥有compile命令功能进行编译,同时会在target目录下生成项目的war/jar文件
    • install:该命令包含了package命令的功能,不但会在你的项目路径下生成class文件和jar包,同时也会在你的本地maven仓库生成jar文件供其他项目使用
    • clean:执行该命令会删除项目路径下的target文件,但是不会删除本地maven仓库已经生成的jar文件

    项目的生命周期

    创建项目、编写项目、清理已编译的代码、编译代码、执行单元测试、打包、集成测试、验证部署、生成站点等这些环节组成了项目的生命周期,这些过程也叫项目的构建过程

    maven将项目的生命周期抽象成了3套生命周期,每套生命周期又包含了多个阶段

    1. clean生命周期
    2. default生命周期
    3. site生命周期

    上面这三套生命周期是相互独立的,没有依赖关系,每套生命周期又包含多个阶段,每套生命周期的多个阶段又是有相互顺序的,并且后面的阶段依赖前面的阶段

    • clean生命周期的目的是清理项目
    • default生命周期是maven的主要生命周期,主要用于构建应用
    • site生命周期的目的是建立和发布项目站点,maven能够基于pom.xml所含的信息自动生成一个有好的站点,方便团队交流和发布项目信息

    maven的使用

    下载maven

    下载地址:Maven – Download Apache Maven

    配置settings.xml文件

    设置本地仓库地址(存放我们的jar包)

    1. <localRepository>C:/All/storehouselocalRepository>

    mirrors内切换镜像仓库地址

    1. <mirror>
    2. <id>aliid>
    3. <name>ali Mavenname>
    4. <mirrorOf>*mirrorOf>
    5. <url>https://maven.aliyun.com/repository/public/url>
    6. mirror>

    maven在idea中的配置使用

    pom.xml文件内的基本概念

    1. <dependencies>
    2. <dependency>
    3. <groupId>mysqlgroupId>
    4. <artifactId>mysql-connector-javaartifactId>
    5. <version>5.1.48version>
    6. dependency>
    7. dependencies>

  • 相关阅读:
    nydusd 源码理解(一)
    “转型做 Saas 失败后,我们归档了 5700+Star 的 GitHub 项目!”
    CANoe-如何实现27服务解锁
    JWT 使用教程 授权 认证
    服务拓扑串联难?eBPF为滴滴可观测带来解题新思路
    【ffmpeg】YUV实践
    The Grapes NFT 概览与数据分析
    [附源码]java毕业设计潮流服饰网店平台
    企业架构LNMP学习笔记40
    js使用闭包封装防抖函数
  • 原文地址:https://blog.csdn.net/m0_60027772/article/details/126278772