当前位置: 首页 > article >正文

maven的介绍与安装

 

目录

1. maven的介绍

1.1. 什么是maven

1.2. maven的作用

1.3. maven的官网

1.4. maven的模型

1.5. maven的仓库

1.6. maven仓库的查找依赖顺序

2. maven的安装

2.1. maven的安装步骤

2.1.1. 解压apache-maven-3.6.1-bin.zip

2.1.2. 配置本地仓库:修改conf/settings.xml中的为一个指定目录

2.1.3. 配置阿里云私服:修改conf/settings.xml中的标签,为其添加如下子标签:

2.1.4. 配置环境变量:MAVEN_HOME为maven的解压目录,并将其bin目录加入PATH环境变量

2.1.5. 验证是否安装成功


1. maven的介绍

1.1. 什么是maven
  • Apache Maven 是一个项目管理和构建工具,它基于项目对象模型(POM)的概念,通过一小段描述信息来管理项目的构建
1.2. maven的作用

  • 方便的依赖管理

传统手动导入jar包——繁琐

a.上网先搜索jar包,把jar包一个一个下载下来,还得注意jar包之间版本配套情况,然后将这些jar包一个一个导入到我们项目当中

b.后期,对某个jar包版本进行升级

maven工程项目工具

a. 如果要使用maven工具来管理依赖,只需要创建一个maven工程,在maven工程当中,不需要导入任何jar包,要用哪个jar包,只需要在maven工程中的pom.xml配置文件当中来配置描述信息

b. 不用手动导入jar包,只需在配置文件当中进行简单描述所需依赖的信息,maven就会自动联网下载

  • 统一的项目结构

  • 标准的项目构建流程

1.3. maven的官网
  • Maven – Welcome to Apache Maven
1.4. maven的模型

1.5. maven的仓库

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

  • 本地仓库:自己计算机上的一个目录

本地仓库在安装maven的时候可以指定的

  • 中央仓库:由Maven团队维护的全球唯一的

仓库地址:Central Repository:

  • 远程仓库(私服):一般由公司团队搭建的私有仓库
1.6. maven仓库的查找依赖顺序
  • 先在本地仓库查找,如果本地仓库有该jar包,直接关联本地jar包
  • 如果本地仓库中没有,会连接中央仓库,从中央仓库当中把该jar包下载下来,然后再关联本地仓库的jar包

中央仓库是全球唯一的,本地仓库连接中央仓库是要连接国外网站的,过程是比较慢的

  • 为了提高下载jar包的下载速度,引入第三种仓库——远程仓库(私服),查找依赖顺序变为本地仓库-远程仓库-中央仓库

安装maven的时候,会使用阿里云的私服来提高jar包的下载速度

2. maven的安装

maven安装比较简单,maven是一个绿色版软件,官方提供的maven安装包就是一个.zip包

2.1. maven的安装步骤
2.1.1. 解压apache-maven-3.6.1-bin.zip
2.1.2. 配置本地仓库:修改conf/settings.xml中的<localRepository>为一个指定目录

目的:为了存放从中央仓库所下载下来的jar包,所以需要配置本地仓库的目录

指定目录(maven本地仓库):为了便于管理,把指定目录放在maven解压目录下,在maven解压目录新建一个文件夹(mvn_repo)作为本地仓库

2.1.3. 配置阿里云私服:修改conf/settings.xml中的<mirrors>标签,为其添加如下子标签:

目的:为了提高jar包下载速度,因为从中央仓库下载jar包需要连接国外的网站,速度比较慢,所以配置阿里云私服,来提高下载速度

2.1.4. 配置环境变量:MAVEN_HOME为maven的解压目录,并将其bin目录加入PATH环境变量

目的:为了在任意目录下都能够执行maven的指令,所以需要配置环境变量

系统变量中MAVEN_HOME——maven的安装目录

Path环境变量——%MAVEN_HOME%bin

bin目录:存放可执行文件

conf目录:存放配置文件,maven的本地仓库和阿里云私服需要在conf目录中的settings.xml配置文件中配置

lib目录:存放的是maven所依赖的jar包资源,因为maven是基于java语言开发的

2.1.5. 验证是否安装成功


http://www.kler.cn/news/331611.html

相关文章:

  • 偏标记学习+图像分类(论文复现)
  • Unity实战案例全解析:RTS游戏的框选和阵型功能 总结
  • 学习docker第四弹----安装redis集群大厂面试
  • 灰度重心法求取图像重心
  • Updates were rejected because the tip of your current branch is behind 的解决方法
  • (功能测试)熟悉web项目及环境 测试流程
  • SQL Server—T-sql聚合函数详解
  • 如何在银河麒麟高级服务器操作系统V10搭建虚拟机管理器?
  • Django学习笔记八:发布RESTful API
  • 【数据结构与算法】LeetCode:堆和快排
  • 深入浅出MongoDB(二)
  • 网络编程-TCP
  • 关于Elastic Search与MySQL之间的数据同步
  • 二、MySQL的数据目录
  • 16.数据结构与算法-串,数组与广义表(串,BF算法,KMP算法)
  • linux第二课:常用命令
  • 828华为云征文|使用Flexus X实例创建FDS+Nginx服务实现图片上传功能
  • 微服务(二)
  • Electron 主进程与渲染进程、预加载preload.js
  • 使用rust实现rtsp码流截图