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 就会报错。

maven配置多个仓库

第一想法就是在mirrors 节点下多增加几个mirror,然而并不可以。正确的操作是在profiles 节点下配置多个profile,而且配置之后要激活。例如:
<mirrors> 
   <mirror>
		<!-- 阿里云镜像 -->
		<id>alimaven</id>
		<name>aliyun maven</name>
        <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
        <mirrorOf>central</mirrorOf>
    </mirror>
   
</mirrors> 

# 其他仓库资源
	<!-- maven官方2号镜像 -->
     <mirror>
        <id>repo2</id>
        <name>Mirror from Maven Repo2</name>
        <url>http://repo2.maven.org/maven2/</url>
        <mirrorOf>central</mirrorOf>
    </mirror>
    <!-- maven的UK镜像 -->
    <mirror>
        <id>ui</id>
        <name>Mirror from UK</name>
        <url>http://uk.maven.org/maven2/</url>
        <mirrorOf>central</mirrorOf>
    </mirror>
    <!-- maven的UK镜像 -->
    <mirror>
        <id>jboss-public-repository-group</id>
        <mirrorOf>central</mirrorOf>
        <name>JBoss Public Repository Group</name>
        <url>http://repository.jboss.org/nexus/content/groups/public</url>
    </mirror>
profiles 节点下配置多个profile
<profiles>
    <profile>
        <id>jboss-public-repository-group</id>
        <repositories>
            <repository>
            <id>jboss-public-repository-group</id>
            <url>http://repository.jboss.org/nexus/content/groups/public</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
                <updatePolicy>always</updatePolicy>
            </snapshots>
            </repository>
        </repositories>
	</profile>
	<profile>
		第二个仓库源..
	</profile>
</profiles>
通过配置 activeProfiles 子节点激活
<activeProfiles>
	<activeProfile>jboss-public-repository-group</activeProfile>  
	<activeProfile>多个激活id</activeProfile>
</activeProfiles>
  • 17
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值