新Maven黑马程序员详解和图解

本文介绍了Maven在Java项目中的关键作用,包括标准化的项目结构、构建流程和依赖管理。详细讲解了Maven的安装配置、常用命令、生命周期、IDEA集成以及依赖范围的设定,为开发者提供全面的Maven实践指南。
摘要由CSDN通过智能技术生成

Maven概述

  • Maven是专门用于管理和构建Java项目的工具,它主要功能有:
  1. 提供了一套标准化的项目结构

    在这里插入图片描述

  2. 提供了一套标准化的构建流程(编译,测试,打包,发布…)

在这里插入图片描述

  1. 提供了一套依赖管理机制
    在这里插入图片描述

Maven 简介

  • Apache Maven是一个项目管理和构建工具,它基于项目对象模型的概念,通过一小段描述信息来管理项目的构建,报告和文档

  • 在这里插入图片描述

  • Maven作用

  1. 标准化的项目结构
  2. 标准化的构建流程
  3. 方便的依赖管理
  • 仓库

仓库分类:

  • 本地仓库:自己计算机上的一个目录
  • 中央仓库:由Maven团队维护的全球唯一的仓库
  • 远程仓库(私服):一般由公司团队搭建的私有仓库

当项目中使用坐标引用对应依赖jar包后,首先会查找本地仓库是否有对应jar包:

  • 如果有,则在项目直接引用;
  • 如果没有,则去中央仓库中下载对应的jar包到本地仓库

还可以搭建远程仓库,将来jar包的查找顺序则变为:

  • 本地仓库->远程仓库->中央仓库

在这里插入图片描述

Maven安装和配置及基本使用

  • Maven安装和配置

在这里插入图片描述

  • Maven基本使用

    • Maven的常用命令
    1. complie:编译
    2. clean:清理
    3. test:测试
    4. package:打包
    5. install:安装
  • Maven生命周期
    在这里插入图片描述

    • Maven构建项目生命周期的是一次构建过程经历了多少事件
    • Maven对项目构建的生命周期划分为3套
    1. clean:清理工作
    2. default:核心工作,例如编译,测试,打包,安装等
    3. site:产生报告,发布站点等

    同一生命周期内,执行后边的命令,前边所有命令会自动执行


IDEA配置Maven

  • IDEAmaven环境配置
    在这里插入图片描述
  1. 选择IDEA中File—>Settings
  2. 搜索maven
  3. 设置IDEA使用本地安装的Maven,并修改配置文件路径
  • Maven坐标详解

    1. 什么是坐标?
    • Maven中的坐标是资源的唯一标识
    • 使用坐标来定义项目或引入项目中需要的依赖
    1. Maven坐标主要组成
    • groupld:定义当前Maven项目隶属组织名称(通常是域名反写 例如:com.itheima)
    • artifactld:定义当前Maven项目名称(通常是模块名称,例如order-service,goods-service)
    • version:定义当前项目版本号
  • IDEA创建Maven项目
    在这里插入图片描述

  1. 创建模块,选择Maven,点击Next
  2. 填写模块名称,坐标信息,点击finsh,创建完成
  3. 编写HelloWorld,并运行
  • IDEA导入Maven项目
    在这里插入图片描述
  1. 选择右侧Maven面板,点击+号
  2. 选中对应项目的pom.xml文件,双击即可
  3. 如果没有Maven面板,选择view->Appearance->Tool Window Bars

依赖管理&依赖范围

  • 依赖管理
  1. 使用坐标导入jar包
    在这里插入图片描述
  • 在pom.xml中编写标签
  • 在标签中使用引入坐标
  • 定义坐标的groupld,artifactld,version
  • 点击刷新,时坐标生效

自动导入jar包
在这里插入图片描述
快捷方式

在这里插入图片描述

  • 依赖范围

在这里插入图片描述

通过设置坐标的依赖管理范围(scope),可以设置对应jar包的作用范围:编译环境,测试环境,运行环境

<dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.13</version>
    <scope></scope>
    </dependency>
依赖范围编译classpath测试classpath运行classpath例子
compileYYYlogback
test-Y-Junit
provideYY-servlet-api
runtime-YYjdbc驱动
systemYY-存储在本地的jar包
import引入DependencyMangement
  • 默认值:complie
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值