Maven的使用和配置国内源的保姆级教程

2025-04-22 16:50

本文主要是介绍Maven的使用和配置国内源的保姆级教程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

《Maven的使用和配置国内源的保姆级教程》Maven是⼀个项目管理工具,基于POM(ProjectObjectModel,项目对象模型)的概念,Maven可以通过一小段描述信息来管理项目的构建,报告...

1. 什么是Maven?

Maven是⼀个项目管理工具。基于POM(Project Object Model,项目对象模型)的概念,Maven可以通过一小段描述信息来管理项目的构建,报告和文档的项目管理工具软件

大白话: Maven是⼀个项目管理工具, 通过pom.XML⽂件的配置获取jar包,而不用手动去添加jar包。

2.创建⼀个Maven项目

IDEA本身已经集成了Maven, 我们可以直接使用, 无需安装

Maven的使用和配置国内源的保姆级教程

3.Maven 核心功能

Maven 提供了标准的,跨平台(linux, Windows, MACOS等)的自动化项目构建方式,当我们开发了一个项目之后, 代码需要经过编译, 测试, 打包, 发布等流程, 每次代码的修改, 都需要经过这些流程, 如果代码反复调试修改, 这个流程就需要反复进行, 就显得特别麻烦, 而Maven 给我们提供了⼀套简单的命令来完成项目的构建。

Maven的使用和配置国内源的保姆级教程

比如, 点击package, 就可以完成项目的打包操作

Maven的使用和配置国内源的保姆级教程

Maven的使用和配置国内源的保姆级教程

jar包和war包都是⼀种压缩文件
jar包就是把开发⼈员已经写好的⼀些代码进行打包. 打好的jar包就可以引入到其他项目中, 也可以直接使用这些jar包中的类和属性. 另外也可以打成可执行的jar包, 这样的包就可以通过Java -jar命令来执行war包可以理解为是⼀个web项目,里面是项目的所有东西, 通常用于网站.

依赖管理

上面说到, Maven是⼀个项目管理工具, 通过pom.xml文件的配置获取jar包,而不用手动去添加jar包获取的jar包, 其实就是依赖

pom.xml 就是maven 的配置文件,用以描述项目的各种信息。

如果使用Maven, 我们只需要在pom.xml中引入mysql-connector-java的依赖就可以了。

<dependencies>
 <!--⾥⾯放置项⽬的依赖坐标, 可为多个 -->
</dependencies>

在pom文件 标签内, 添加依赖坐标:

<dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.30</version>
</dependency>

如下图:

Maven的使用和配置国内源的保姆级教程

Maven的使用和配置国内源的保姆级教程

2.然后点击右上角的m刷新pom文件。

Maven的使用和配置国内源的保姆级教程

可以看到pom木有报红色了,左边也多了一些依赖。

4.使用Maven Helper插件

在idea当中安装一个插件:
1.打开IntelliJ IDEA,选择“File”→“Settings…”
2.点击“Plugins”→“Marketplace”
3.在搜索框中输入“maven helper”,点击“Install”进行安装
4.安装完成后,并重启IDEA

Maven的使用和配置国内源的保姆级教程

查看依赖关系

Maven的使用和配置国内源的保姆级教程

安装完成后,在项目的pom.xml文件右侧会出现一个“Dependency Analyzer”选项卡。点击该选项卡,可以看到以下三个选项:

Conflicts:查看依赖冲突

AllChina编程 Dependencies as List:以列表形式查看所有依赖

Maven的使用和配置国内源的保姆级教程

All Dependencies as Tree:以树状图形式查看所有依赖

Maven的使用和配置国内源的保姆级教程

解决依赖冲突

当选择“Conflicts”时,如果没有依赖冲突,右上角会显示“No Conflicts”。

Maven的使用和配置国内源的保姆级教程

如果有依赖冲突,冲突信息会显示在下方。可以选择冲突的依赖并点击“Exclude”按钮。

点击“Exclude”后,插件会自动在pom.xml文件中添加标签,排除子依赖,从而解决冲突。

通过以上方法,Maven Helper插件可以帮助开发者快速解决依赖冲突,提高开发效率。

5.仓库配置

本地仓库

我们通过短短几行代码, 就把依赖jar包放在了项目里, 具体是如何做的呢?
这个代码, 我们称之为 “坐标”, 也就是唯⼀的.
在Maven中, 根据 groupId、artifactId、version 的配置, 来唯⼀识别⼀个 jar 包, 缺⼀不可.
当我们在pom文件中配置完依赖之后, 点击刷新, Maven会根据坐标的配置, 去仓库⾥寻找Jar包, 并把他下载下来, 添加到项⽬中. 这个Jar包下载的地方就称为仓库.

仓库:用于存储资源,管理各种jar包。

Maven的使用和配置国内源的保姆级教程

Maven仓库分为两大类: 本地仓库和远程仓库. 其中远程仓库⼜分为中央仓库, 私 服和其他公共库。

本地仓库:

  • 本地仓库: 自己计算机上的⼀个目录(用来存储jar包)
  • 当项目中引入对应依赖jar包后,首先会查找本地仓库中是否有对应的jar包
    • • 如果有,则在项目直接引用
    • • 如果没有,则去 中央仓库中下载对应的jar包到本地仓库

Maven的使用和配置国内源的保姆级教程

本地仓库地址可以通过Maven配置查看:

File -> Settings

Maven的使用和配置国内源的保姆级教程

查看该仓库目录, 可以看到该目录下有很多的jar(最开始是空的, 随着Maven的使用, 该仓库下文件会越来越多)

中央仓库

配置远程仓库

pom.xmlsettings.xml 中添加仓库配置:

<repositories>
    <repository>
        <id>aliyun</id>
        <url>https://maven.aliyun.com/repository/public</url>
    </repository>
</repositories>

私有服务器, 也称为私 服

私 服: ⼀般由公司团队搭建编程的私有仓库。

私 服属于某个公司,或者某个部门, 往往需要⼀定权限。

有了私 服之后, Maven依赖下载的顺序又发生了变化。

Maven的使用和配置国内源的保姆级教程

当Maven需要下载资源的时候:

  • 先从本地仓库获取, 本地仓库存在, 则直接返回
  • 如果本地仓库没有, 就从私 服请求, 私 服存在该资源, 就直接返回
  • 如果私 服上不存在该资源,则从中央仓库下载, 中央仓库不存在, 就报错了…
  • 如果中央仓库中存在, 就先缓存在私 服上之后,再缓存到本地仓库里, 再为Maven的下载请求提供服务

设置国内源

因为中央仓库在国外, 所以下载起来会比较慢, 所以咱们选择借助国内⼀些公开的远程仓库来下载资源接下来介绍, 如何设置国China编程内源。

Maven的使用和配置国内源的保姆级教程

查看配置文件的地址, 如上图所示, Maven配置文件地址为: D:\Maven.m2\settings.xml

注意:

不同电脑设置的Maven路径不同:settings和repository 可以修改设置为其他路径, 两个路径不要有中文。

配置国内源

Maven 仓库默认在国外https://mvnrepository.com/, 国内使用时会比较慢,我们可以更换为阿里云的仓库也可以选择别的仓库。

settings.xml 中在 mirrors 节点上添加镜像配置:

<mirrors>
    <mirror>
        <id>aliyun</id>
        <name>阿里云公共镜像</name>
        <url>https://maven.aliyun.com/repository/public</url>
        <mirrorOf>*</mirrorOf>
    </mirror>
</mirrors>

上述配置的内容, 只对当前项目生效, 为了让后续新建的项目也生效, 需要重新设置⼀下新项目的Settings。

Maven的使用和配置国内源的保姆级教程

当前项目和新项目共用⼀个setttings文件即可, http://www.chinasem.cn所以新项⽬的设置, 只需要确认⼀下settingjss文件的路径即可。

Maven的使用和配置国内源的保姆级教程

6.总结

通过以上步骤,你可以轻松配置 Maven 并使用国内镜像加速依赖下载。Maven 的强大之处在于其依赖管理和插件生态系统,掌握这些技能将显著提升你的开发效率。

以上就是Maven的使用和配置国内源的保姆级教程的详细内容,更多关于Maven使用和配置的资料请关注编程China编程(www.chinasem.cn)其它相关文章!

这篇关于Maven的使用和配置国内源的保姆级教程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1154325

相关文章

使用Python实现图像LBP特征提取的操作方法

《使用Python实现图像LBP特征提取的操作方法》LBP特征叫做局部二值模式,常用于纹理特征提取,并在纹理分类中具有较强的区分能力,本文给大家介绍了如何使用Python实现图像LBP特征提取的操作方... 目录一、LBP特征介绍二、LBP特征描述三、一些改进版本的LBP1.圆形LBP算子2.旋转不变的LB

SpringBoot多数据源配置完整指南

《SpringBoot多数据源配置完整指南》在复杂的企业应用中,经常需要连接多个数据库,SpringBoot提供了灵活的多数据源配置方式,以下是详细的实现方案,需要的朋友可以参考下... 目录一、基础多数据源配置1. 添加依赖2. 配置多个数据源3. 配置数据源Bean二、JPA多数据源配置1. 配置主数据

Python中__init__方法使用的深度解析

《Python中__init__方法使用的深度解析》在Python的面向对象编程(OOP)体系中,__init__方法如同建造房屋时的奠基仪式——它定义了对象诞生时的初始状态,下面我们就来深入了解下_... 目录一、__init__的基因图谱二、初始化过程的魔法时刻继承链中的初始化顺序self参数的奥秘默认

SpringBoot使用GZIP压缩反回数据问题

《SpringBoot使用GZIP压缩反回数据问题》:本文主要介绍SpringBoot使用GZIP压缩反回数据问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录SpringBoot使用GZIP压缩反回数据1、初识gzip2、gzip是什么,可以干什么?3、Spr

Spring 基于XML配置 bean管理 Bean-IOC的方法

《Spring基于XML配置bean管理Bean-IOC的方法》:本文主要介绍Spring基于XML配置bean管理Bean-IOC的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一... 目录一. spring学习的核心内容二. 基于 XML 配置 bean1. 通过类型来获取 bean2. 通过

Spring Boot 集成 Quartz并使用Cron 表达式实现定时任务

《SpringBoot集成Quartz并使用Cron表达式实现定时任务》本篇文章介绍了如何在SpringBoot中集成Quartz进行定时任务调度,并通过Cron表达式控制任务... 目录前言1. 添加 Quartz 依赖2. 创建 Quartz 任务3. 配置 Quartz 任务调度4. 启动 Sprin

Linux下如何使用C++获取硬件信息

《Linux下如何使用C++获取硬件信息》这篇文章主要为大家详细介绍了如何使用C++实现获取CPU,主板,磁盘,BIOS信息等硬件信息,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录方法获取CPU信息:读取"/proc/cpuinfo"文件获取磁盘信息:读取"/proc/diskstats"文

Java使用SLF4J记录不同级别日志的示例详解

《Java使用SLF4J记录不同级别日志的示例详解》SLF4J是一个简单的日志门面,它允许在运行时选择不同的日志实现,这篇文章主要为大家详细介绍了如何使用SLF4J记录不同级别日志,感兴趣的可以了解下... 目录一、SLF4J简介二、添加依赖三、配置Logback四、记录不同级别的日志五、总结一、SLF4J

使用Python实现一个优雅的异步定时器

《使用Python实现一个优雅的异步定时器》在Python中实现定时器功能是一个常见需求,尤其是在需要周期性执行任务的场景下,本文给大家介绍了基于asyncio和threading模块,可扩展的异步定... 目录需求背景代码1. 单例事件循环的实现2. 事件循环的运行与关闭3. 定时器核心逻辑4. 启动与停

如何使用Nginx配置将80端口重定向到443端口

《如何使用Nginx配置将80端口重定向到443端口》这篇文章主要为大家详细介绍了如何将Nginx配置为将HTTP(80端口)请求重定向到HTTPS(443端口),文中的示例代码讲解详细,有需要的小伙... 目录1. 创建或编辑Nginx配置文件2. 配置HTTP重定向到HTTPS3. 配置HTTPS服务器