基本Apache Maven(安装、配置、依赖的导入等)

发布于:2022-11-13 ⋅ 阅读:(806) ⋅ 点赞:(0)

Apache Maven

1. Maven简介

maven是一个项目管理和构建工具

1.2 Maven的作用

1.标准化的项目结构

2.标准化的构建流程

3.方便的依赖管理

Maven官网:Maven – Welcome to Apache Maven

请添加图片描述

1.3 Maven模型

注:各种各样插件构建生命周期,这个一部分是标准化结构流程

image-20221113190550450

注:在pom.xml创建各种各样的项目里面有项目唯一的标识,标识之间形成依赖关系

1.4 Maven仓库

1.本地仓库(计算机上的一个目录)

2.中央仓库(官网免费的jar包)

3.远程仓库(私人仓库一般是公司搭建)

工作流程

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

1.如果有,则在项目直接引用;

2.如果没有,则去中央仓库中下载对应的jar包到本地仓库。

3.然后项目再向本地仓库引用

image-20221113190629473

如果搭建了远程仓库流程如下:

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

1.如果有,则在项目直接引用;

2.如果没有,则去中央仓库中下载对应的jar包到远程仓库。

3.远程仓库再下载到本地仓库

4.然后项目再向本地仓库引用

image-20221113190641038

2. Maven安装配置

2.1 下载apache-maven-3.6.1-bin

下载地址:https://pan.baidu.com/s/1cFxigVC4QCshe9wqeRtfAA?pwd=eq51

1.下载到指定位置,然后解压到当地文件夹(就是安装完成)

image-20221113190656401

2.解压缩后的目录结构如下:

image-20221113190708870

2.2 配置环境变量 MAVEN_HOME 为安装路径的bin目录

1.复制目录

image-20221113190744166

2.此电脑 右键 --> 高级系统设置 --> 高级 --> 环境变量

3.在系统变量处新建一个变量 MAVEN_HOME

image-20221113190815737

4.在 Path 中进行配置image-20221113190835377

5.打开命令提示符进行验证,出现如图所示表示安装成功
image-20221113190904197

image-20221113190913974

2.3 配置本地仓库

1.在E:\software\apache-maven-3.6.1下创建一个目录当本地仓库

image-20221113190934304

2.复制目录
image-20221113190950789

3.修改 conf/settings.xml 中的 为一个指定目录作为本地仓库,用来存储jar包。
image-20221113191004141

image-20221113191019560

4.修改完成的样子
image-20221113191037111

5.本地仓库配置成功,保存退出

2.4 Maven配置阿里云私服,为什么配置阿里云私服?

  1. 中央仓库在国外,所以下载jar包速度可能比较慢,而阿里公司提供了一个远程仓库,里面基本也都有开源项目的jar包。

  2. 修改 conf/settings.xml 中的 标签,为其添加如下子标签:

​ alimaven

​ aliyun maven

​ http://maven.aliyun.com/nexus/content/groups/public/

​ central

  1. 在conf/settings.xml下的配置如下:image-20221113191110917

  2. 测试阿里云是否可用(安装插件测试)
    image-20221113191140217

  3. 查看插件是否安装到本地仓库
    image-20221113191154166

配置完成

3. Maven的基本使用

3.1 Maven的基本命令

Maven常用的命令

  1. compile :编译

  2. clean:清理

  3. test:测试

  4. package:打包

  5. install:安装

3.2 Maven 生命周期

Maven 构建项目生命周期描述的是一次构建过程经历经历了多少个事件

1. Maven 对项目构建的生命周期划分为3套:

  1. clean :清理工作。

  2. default :核心工作,例如编译,测试,打包,安装等。

  3. site : 产生报告,发布站点等。这套声明周期一般不会使用。

    同一套生命周期内,执行后边的命令,前面的所有命令会自动执行。例如默认(default)生命周期如下:

    image-20221113191213123

    当我们执行 install (安装)命令时,它会先执行 compile 命令,再执行 test 命令,再执行 package 命令,最后执行

    install 命令。

    当我们执行 package (打包)命令时,它会先执行 compile 命令,再执行 test 命令,最后执行 package 命令。

4. IDE使用Maven

4.1 IDE配置Maven环境

  1. 选择 IDEA中 File --> Settingsimage-20221113191230676

  2. 搜索 mavenimage-20221113191259850

  3. 设置 IDEA 使用本地安装的 Maven,并修改配置文件路径
    image-20221113191325667

    注:如果依赖出现错误可以用我配置的仓库:https://pan.baidu.com/s/1xDLMa-qtqhdTDeV4msUZrw?pwd=rrtc

配置完成

4.2 Maven 坐标

什么是坐标?

  1. Maven 中的坐标是资源的唯一标识

  2. 使用坐标来定义项目或引入项目中需要的依赖

Maven 坐标主要有三部分组成

  1. groupId:定义当前Maven项目隶属组织名称(通常是域名反写,例如:com.gdcmzyxx)

  2. artifactId:定义当前Maven项目名称(通常是模块名称,例如 order-service、goods-service)

  3. version:定义当前项目版本号(项目的版本号)

4.3 IDE创建一个Maven项目

  1. 创建模块

    image-20221113191349546

  2. 选择Maven,点击Next
    image-20221113191401047

  3. 填写模块名称,坐标信息,点击finish,创建完成 image-20221113191415978

  4. 创建好的项目目录结构如下: image-20221113191441649

4.4 IDe导入Maven项目

  1. 选择右侧Maven Projects面板,点击 + 号image-20221113191455339

  2. 选中对应项目的pom.xml文件,双击即可​ image-20221113191513184
    image-20221113191527951

  3. 项目导入成功4.5 安装Maven Hello插件1. 选择 IDEA中 File --> Settingsimage-20221113191600658

  4. 选择 Plugins,然后点击Browse repositories image-20221113191625934

  5. 搜索 Maven,选择第一个 Maven Helper,点击Install安装,弹出面板中点击Acceptimage-20221113191637481

  6. 重启IDEA就可以看见插件image-20221113191654014

5. 依赖管理

5.1 导入Jar包

使用坐标引入jar包的步骤:

  1. 在项目的 pom.xml 中编写 标签 image-20221113191737173

  2. 在 标签中 使用 引入坐标() image-20221113191748363

  3. 我们要什么坐标就去网上找比如MySQL (网上搜索mysql maven)image-20221113191802278

  4. 然后在里面找到你需要的版本,然后复制到里面定义坐标的 groupId,artifactId,versionimage-20221113191822723

如下:

image-20221113191842034
  1. 让其生效:

  2. 导入多个jar包(全部要在里面)image-20221113191928300

5.2快速导入已有jar

快捷引入坐标的方式

  1. 在 pom.xml 中 按 alt + insert,选择 Dependencyimage-20221113192407345

  2. 在弹出的面板中搜索对应坐标,然后双击选中对应坐标
    image-20221113192427490

  3. 点击刷新按钮,使坐标生效image-20221113192516094

6. 依赖范围

1. 怎么设置范围:

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

如下图所示给 junit 依赖通过 scope 标签指定依赖的作用范围。 那么这个依赖就只能作用在测试环境,其他环境下不能使

用。

image-20221113192551289

2. scope 取值和范围

image-20221113192608722

  1. compile :作用于编译环境、测试环境、运行环境。test : 作用于测试环境。典型的就是Junit坐标,以后使用Junit时,都会将scope指定为该值

  2. provided :作用于编译环境、测试环境。我们后面会学习 servlet-api ,在使用它时,必须将 scope 设置为该值,不然运行时就会报错

  3. runtime : 作用于测试环境、运行环境。jdbc驱动一般将 scope 设置为该值,当然不设置也没有任何问题使用。

image-20221113192551289

2. scope 取值和范围

[外链图片转存中…(img-gT5dAJnU-1668339345545)]

  1. compile :作用于编译环境、测试环境、运行环境。test : 作用于测试环境。典型的就是Junit坐标,以后使用Junit时,都会将scope指定为该值

  2. provided :作用于编译环境、测试环境。我们后面会学习 servlet-api ,在使用它时,必须将 scope 设置为该值,不然运行时就会报错

  3. runtime : 作用于测试环境、运行环境。jdbc驱动一般将 scope 设置为该值,当然不设置也没有任何问题


网站公告

今日签到

点亮在社区的每一天
去签到