maven - 项目管理工具

maven包含这五个东西
一个项目对象模型
一组标准集合
一个项目生命周期
一个依赖管理系统
一套用来运行定义在生命周期阶段中插件目标的逻辑

maven能解决什么问题

  1. jar和项目分离, 这样就解决了jar冲突问题
  2. 将java文件编译成计算机能理解的class文件
  3. 方便测试, 能把指定目录下的单元测试一次性测试完成
  4. 方便打包, 用命令直接打包项目

所以我们可以看到在一个项目的所有过程中, maven都能起到帮助作用.

核心功能:

  1. 传统项目 VS maven项目, jar包在项目中, jar包和项目分离.
  2. 一个项目的经历
    遍译-> 测试 -> 运行 -> 打包 -> 安装 -> 部署
    而maven可以一键构建
    不再使用本地安装的tomcat, 而是使用maven本身集成的tomcat插件, 来完成这些操作过程

也即是说, maven的两大特点就是可以jar包分离, 和一键构建项目

使用命令将maven项目运行起来

  1. 复制项目的路径
  2. cmd
  3. 进入项目目录
  4. 挑一个盘符, 这里就进入了项目目录中了
  5. 接下来在项目目录中敲命令Mvn tomcat:run
    这样一来项目就运行起来了, 还提供了一个访问的地址

也就是说, 有了maven这个工具, 不用再去将项目一个一个安装部署在tomcat服务器上了

maven的安装

  1. 没有空格的目录下, 直接解压
  2. 了解目录结构
    bin目录:
    boot目录: maven自身运行的类加载器
    conf目录: 这里面有一个setting.xml, 对maven进行各种配置
    lib目录: 许多自身运行所用到的jar包, tomcat插件也在其中
  3. 创建maven的环境变量
    变量名MAVEN_HOME, 值是安装的地址
    进入path中添加该变量, %MAVEN_HOME%\bin
    前提是, 已经正确的配置过了JAVA_HOME
  4. 测试是否已经成功安装
    cmd
    mvn -v

maven仓库的种类和彼此的关系

  1. maven项目中没有jar包, 只有jar包地址坐标
    .在conf -> setting.xml -> Default : ${user.home}/.mz/repository/
    也就是本地C盘中用户文件夹下会自动生成一个本地仓库
    默认情况下回去这里找jar包
  2. 一开始本地仓库中是没有jar包的, 如果此时的电脑是联网的话, 就会去一个叫中央仓库的地方找jar包, 下载jar, 如果本地仓库没有该坐标的jar包, 又没有联网, 就会报错了
  3. 公司中经常又开设一个仓库, 称为私服或者远程仓库, 在局域网中
    如何自定义本地仓库
    在这里插入图片描述
    先下载一个有常用的jar的压缩包, 解压到本地一个没有空格和中文的目录中, 在setting.xml中修改即可
    在这里插入图片描述

maven项目的标准目录结构
将一个项目分成四个部份, 为的是之后在维护中, 不用每一次都都重新将核心代码部份打包, 和测试的方便.
核心代码部份
配置文件部份
测试代码部份
测试配置文件
在这里插入图片描述
maven的生命周期对应的命令
在这里插入图片描述
当我们拿到别人的项目时
要清除在别人电脑上的编译信息
编译时只是编译main下java的代码
测试时不仅编译main下的java也编译test下的java
以此类推, 后面的命令会连带前面的所有命令.

maven概念模型图
在这里插入图片描述
pom.xml就是项目本身的信息+依赖jar的坐标信息+插件信息(jdk\tomcat)
一个jar包坐标至少包含以下的信息
在这里插入图片描述
所以这个图的最上层, 其实就是对应的maven的第一个核心功能, 依赖管理
下面的就是对应的第二个核心功能, 一键构建, 每一个构建项目的命令都对应了maven底层的一个插件

idea怎么集成maven
电脑上已经安装了maven
idea-> configure -> settings -> 搜索maven-> 点击maven
在这里插入图片描述
在这里插入图片描述
ok

jar的依赖范围
在这里插入图片描述

Guess you like

Origin blog.csdn.net/weixin_45032905/article/details/121778756