Maven_下载_安装_配置

文章参考:https://zhuanlan.zhihu.com/p/615382243

Maven简介

Maven 是 Apache 软件基金会的一个开源项目,是一个优秀的项目构建工具,它用来帮助开发者管理项目中的 jar,以及 jar 之间的依赖关系、完成项目的编译、测试、打包和发布等工作。

maven优点:

1、原来的项目中需要的jar包必须手动"复制"、"粘贴" 到WEB-INF/lib 项目下,而借Maven,可以将jar包仅仅保存在"仓库"中,有需要使用的工程只需要"引用"这个文件,并不需要重复复制到工程中。

2、原来的项目中所需要的jar包都是提前下载好的,而Maven在联网状态下会自动下载所需要的jar包。首先在本地仓库中找,找不到就在远程仓库进行下载。

3、原来的项目中一个jar包所依赖的其他jar包必须手动导进来,而Maven会自动将被依赖的jar包导进来。

4、原来的项目一个项目就是一个工程,而借助Maven可以将一个项目拆分成多个工程。

Maven的安装

前提是安装JDK(Maven 工作时需要通过网络下载各种插件以完成任务,因此应保证网络的通畅)

Maven官网下载Maven服务器

Maven官网地址:

复制代码
https://maven.apache.org/

点击Download下载

配置Maven

把刚刚下载完成的zip包解压到本地文件夹,建议还是不要出现在中文的文件夹下面,以免出现各种问题!

打开高级系统设置,在系统环境中配置环境变量,点击新建配置bin目录,点击确定

配置成功打开cmd后输入命令mvn -version

配置maven本地仓库

如何将下载的 jar 文件存储到我们指定的仓库中呢?

需要在 maven 的服务器解压的文件中找到 conf 文件夹下的 settings.xml 文件进行修改,修改注意备份setting原文件,防止误操作,可以复原;如下图所示:

这个是存放mvn的仓库地址

为了提高下载速度,可在如图所示位置配置阿里云仓库,配置完保存

复制代码
<mirror>   <!-- 配置阿里云镜像仓库 -->
	<id>nexus-aliyun</id>
	<mirrorOf>*</mirrorOf>
	<name>Nexus aliyun</name>
	<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
</mirror>

  <profiles>  <!-- 配置JDK -->
	<profile>
      <id>jdk-1.8</id>
      <activation>
        <activeByDefault>true</activeByDefault>
        <jdk>1.8</jdk>
      </activation>
      <properties>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
        <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
      </properties>
    </profile>

在IDEA中配置Maven

打开settings ,选择Build ,Execution这个选项的Maven选项即可

Maven工程pom.xml配置

maven 仓库官网(http://mvnrepository.com/)

在官网里就可以下载自己所需开发 jar 包,继续点击链接打开如下:

在 Pom.xml 文件配置 jar 包信息(坐标),使用 maven 自动下载 jar 包

配置好坐标后,在你的右上角找下图所示按钮刷新,点击之后文件会自动下载到你本地仓库中

Maven POM

在创建 POM 之前,首先要确定工程组(groupId),及其名称(artifactId)和版本,在仓库中这些属性是项目的唯一标识。一旦在 pom.xml 文件中配置了所依赖的 jar,Maven 会自动从构件仓库中下载相应的构件。

Maven 坐标

Maven 坐标一套规则,它规定:世界上任何一个构件都可以使用 Maven 坐标并作为其唯一标识,Maven 坐标包括 groupId、artifactId、version、packaging 等元素,只要用户提供了正确的坐标元素,Maven 就能找到对应的构件。

Maven 坐标主要由以下元素组成:
  • groupId: 项目组 ID,定义当前 Maven 项目隶属的组织或公司,通常是唯一的。它的取值一般是项目所属公司或组织的网址或 URL 的反写,例如 net.biancheng.www。
  • artifactId: 项目 ID,通常是项目的名称。
  • version:版本。
  • packaging:项目的打包方式,默认值为 jar。

以上 4 个元素中 groupId、artifactId 和 version 是必须定义的,packaging 是可选的。

Maven仓库

Maven 仓库可以分为 2 个大类:

  • 本地仓库
  • 远程仓库

当 Maven 根据坐标寻找构件时,它会首先查看本地仓库,若本地仓库存在此构件,则直接使用;若本地仓库不存在此构件,Maven 就会去远程仓库查找,若发现所需的构件后,则下载到本地仓库使用。如果本地仓库和远程仓库都没有所需的构件,则 Maven 就会报错。

相关推荐
葡萄城技术团队1 分钟前
在 Java 中优化 MySQL 查询以提升性能
java·开发语言·mysql
杀死那个蝈坦5 分钟前
短链接生成-基于布隆过滤器和唯一索引
java·数据库·微服务·oracle·rocketmq
慕白Lee5 分钟前
Java foreach在lambda的foreach遍历中退出操作(lambda foreach break)
java
winfield8218 分钟前
Java 中大量闲置 MySQL 连接的解决方案(从根因到落地)
java·mysql
moxiaoran575311 分钟前
Java开发中VO的使用
java·开发语言
计算机毕设指导611 分钟前
基于微信小程序图像识别的智能垃圾分类系统【源码文末联系】
java·spring boot·mysql·微信小程序·小程序·分类·maven
LJianK117 分钟前
前后端接口常见传参
java·spring
独自破碎E19 分钟前
消息队列如何保证消息的有效性?
java·开发语言·rocketmq·java-rocketmq
38242782720 分钟前
使用 webdriver-manager配置geckodriver
java·开发语言·数据库·爬虫·python
骚戴27 分钟前
2025企业级架构演进:重构 Java/Python 的 RAG 与 Agent 系统的六种核心策略
java·人工智能·大模型·llm·api