Maven快速入门实战

一、为什么使用Maven

  1. Maven 是 Apache 软件基金会组织维护的一款专门为 Java 项目提供构建和依赖管理支持的工具。
  2. 传统的方式创建项目,在不同的软件中,项目的目录会有差异,例如在Idea和Eclipse中创建同一个项目,项目结构不同。
    在这里插入图片描述
  3. 使用Maven就是为了解决这个问题,使得创建的项目结构相同
    在这里插入图片描述
  4. 依赖管理:引入仓库来管理Jar包,不用每个项目都要上传Jar包,将项目需要的Jar包与项目分离,减少项目内存,传输项目时接收者只需要在本地建立Maven的Jar包管理仓库即可
    在这里插入图片描述

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

二、Idea配置Maven

2.1下载Maven

Maven下载界面
在这里插入图片描述
下载后解压
在这里插入图片描述
修改配置信息:本地仓库位置更改
在这里插入图片描述

2.2配置信息更改

2.2.1本地仓库位置更改

在这里插入图片描述
修改本地仓库位置:注意不能有中文路径
在这里插入图片描述

2.2.2远程仓库

由于初始状态本地仓库不会拥有所有的Jar包,后续需要的本地没有会从远程仓库下载
在这里插入图片描述
由于Maven的官方地址在国外,下载速度很慢,我们需要将镜像地址改为国内的
在这里插入图片描述

2.2.3环境变量配置

Maven 是一个用 Java 语言开发的程序,它必须基于 JDK 来运行,需要通过 JAVA_HOME 来找到 JDK 的安装位置。
在这里插入图片描述
path中声明bin
在这里插入图片描述
验证配置情况:出现下面版本信息配置完成
在这里插入图片描述

三、Idea创建Maven工程

3.1Idea配置Maven环境

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

3.2Idea创建Maven项目

在这里插入图片描述
在这里插入图片描述
依赖配置文件Pom.xml
在这里插入图片描述
目录文件结构及作用介绍
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.3坐标介绍,pom.xml内部配置信息介绍

以下三个坐标信息只是本项目的坐标信息,仅以此介绍Jar包的依赖配置原理,本项目也拥有一个坐标信息的原因是本项目也可以打包成Jar包被别的工程项目依赖,别的项目依赖配置的时候会填写本项目的Jar包坐标信息。
在这里插入图片描述
实际的Jar包依赖信息写在<dependencies> </dependencies>
在这里插入图片描述
对于Jar包的依赖信息可以去官网找,直接粘贴:比如
Maven的中央仓库
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
配置信息填好后刷新自动下载
在这里插入图片描述

3.4本地仓库Jar包查找

在这里插入图片描述
在这里插入图片描述
然后进入Servlet文件夹,可以找到下载的Jar包对应的版本<version>4.0.1</version>
在这里插入图片描述

3.5 properties属性配置

在这里插入图片描述

3.6Maven命令

在这里插入图片描述

3.6.1直接点击执行响应的命令

在这里插入图片描述

3.6.2通过命令行方式执行命令

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

3.6.3测试按钮

在这里插入图片描述

3.6.4打包按钮

在这里插入图片描述

3.7依赖范围

在这里插入图片描述
有以下几种依赖范围可以选择:
在这里插入图片描述
!–依赖范围的设置
编译:编译阶段表明,在编译时期就能调用依赖中的类(src/main/java文件夹下)
测试:在Test测试文件中使用(src/test文件夹下)
运行\打包:包内
在这里插入图片描述
在这里插入图片描述

依赖范围设置为runtime时,编译时无法使用,运行时可以通过反射来使用
在这里插入图片描述

3.8依赖传递

在这里插入图片描述
注意:想要A项目依赖B项目,B项目必须执行安装命令,安装到本地仓库。
在这里插入图片描述
在这里插入图片描述

在项目1中添加项目2的依赖,依赖信息在项目2的pom.xm中
在这里插入图片描述
项目1:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.9依赖排除与覆盖

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

3.10依赖链接图

在这里插入图片描述

3.11Maven聚合项目

  1. 对于一个大的软件开发项目,一般根据功能需求将整个项目拆分为多个小工程以方便管理
  2. A工程依赖B工程,每当B工程内部有变化时都需要重新执行install命令,以更新本地仓库中的内容,比较麻烦。-》聚合项目可以解决此问题,当项目B发生改变时,项目A能感知到变化。
    在这里插入图片描述

3.11.1创建聚合项目

正常创建Maven工程即可。
在这里插入图片描述
在这里插入图片描述

3.11.2规范聚合项目操作

  1. 由于聚合项目只是用来管理子项目,一般不会用来写代码,需要删除项目中的src文件夹
    在这里插入图片描述
  2. 修改,默认情况时打成jar包,但是聚合项目不回去继续宁打包操作,改成pom表示不是一个具体的包
  <packaging>pom</packaging>

在这里插入图片描述
3. 创建子工程
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
4. pom.xml管理子工程
在这里插入图片描述
在这里插入图片描述

3.12Maven继承

当两个子工程都需要某一个包的时候,可以将此包放在聚合工程中,并让两个子工程继承聚合工程,就会自动获取该依赖包。

  1. 可以通过创建子工程的时候,设置其Parent是什么
  2. 也可以在pom中手动设置

在这里插入图片描述
在这里插入图片描述
在pom.xm中自动配置好
在这里插入图片描述
在这里插入图片描述
以上设置会使得父工程中所有的包都传递给子工程,当对于父工程中的某些依赖,只有个别子工程需要的时候,可以通过以下方式在父工程设置依赖。
在这里插入图片描述
子工程中需要引用的话再设置依赖,但不用加版本号
在这里插入图片描述
在父工程中对于所有子工程都需要依赖的包放在<dependencies></dependencies>中,对于不是所有子工程都需要的依赖放在<dependencyManagement></dependencyManagement>

四、总结

在这里插入图片描述

  • 12
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

泰勒今天想展开

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值