后端学习——Maven基础

2

主题

5

帖子

10

积分

新手上路

Rank: 1

积分
10
发表于 2022-12-28 14:13:28 | 显示全部楼层
一、Maven简介

1.maven是什么

maven是apache下纯java开发的开源项目。它是一个项目管理是一个项目管理工具,可以对 Java 项目进行构建、依赖管理。也可被用于构建和管理各种项目,如 C#,Ruby,Scala 和其他语言编写的项目。曾是 Jakarta 项目的子项目,现为由 Apache 软件基金会主持的独立 Apache 项目。
2.maven做什么

maven帮助我们解决了2个问题。一是帮助我们解决自动化编码部署问题,我们写好了java代码,但是电脑并不能理解我们,他只明白0和1这时我们就可以使用maven帮助我们将代码编译成电脑能执行的文件。二是帮助我们进行依赖管理,一个项目可能存在多个不同的第三方包,其中的三方包需要升级,或者第三方包依赖的第三方包和自己依赖的三方包版本冲突等等,这些都是需要进行繁琐的操作才能解决。但是使用了maven就很简单了,你只需要简单的配置后,maven就可以帮你管理这些依赖包。
二、Maven基础概览

1.maven仓库

我们的项目会使用到很多第三方包,这个第三方包肯定是需要一个地方存放,存放这些三方包的地方就叫maven仓库。maven仓库又分为三种,中央仓库(central),本地仓库(local),远程(私服)仓库(remote)。
中央仓库
我们买了一台新电脑,新电脑上要安装一些应用,这些应用肯定是需要到应用商城上下载,应用商城里放着我们大部分需要使用到的应用。maven的中央仓库就类似应用商城存放在我们需要的大部分第三方包,你需要用什么就直接在中央仓库里拿。maven的中央仓库由maven的开发团队维护,里面存放在全世界大部分的资源包。
本地仓库
中央仓库存放着全世界大部分的资源包,我们需要使用直接拿,我们不能一有需要就访问一次中央仓库这样太麻烦也太慢了,为了方便我们本地也有一个存放资源包的地方这就是本地仓库。我们需要什么就从中央仓库拿取资源存放到我们自己维护的本地仓库。
远程(私服)仓库
中央仓库只有一个,你我他都从中央仓库拿资源,带宽是固定的,人一多使用起来就慢。这时我们就需要使用到远程仓库也就是私服。私服可以事先从重要仓库拿一遍资源,你就可以直接从私服中拿取数据了,私服使用人少,且一般都是公司局域网这速度肯定快。我们上面提到,中央仓库存放着全世界大部分的资源包,那还有一部分资源包在哪里呢?这部分就存放在私服,公司的资源包,整个公司都需要使用但又不想让别人知道就可以存放到私服。
2.maven坐标

中央仓库里存放着你我他的资源包,那我们要如何区分这些资源包是谁谁谁。为了分清他们我们就需要给他们每个资源包发一个身份证这就引出了maven坐标。maven坐标用什么来表示呢?maven坐标肯定得保证唯一性,使用自增就保证了唯一性,但是它不好记,就是一串无意义的数字。来让我们看看域名http://www.baidu.com三级结构不仅唯一好记还有意义,我们也可以仿照这个来给jar做身份证。jar肯定是有一个作者,你也希望别人知道jar包是你做的,而不是什么阿猫阿狗做的,我们就可以用你的信息来做这个身份证的一部分。现在我们知道这个资源包是谁提供的了,但是你可能提供了不只一个资源包,每个资源部也需要有个名字来做他的身份证。现在我们知道了是谁写的那一个资源包,但是这个资源包可能一直在更新,今天1.0,明天2.0,我们可以用他的版本来做身份证。这些这个身份证我们就做完,你的名字+包的名字+包的版本,这就是maven的坐标。
<dependency>
    <groupId>your.info</groupId>
    <artifactId>jar-name</artifactId>
    <version>1.0</version>
</dependency>命名规则
groupId:定义当前Maven项目隶属的实际项目,例如org.apache.maven,此id前半部分org.apache代表此项目隶属的组织或公司,后部分代表项目的名称。若项目是多模块开发子模块可以分为http://org.apache.maven.xxx。特别注意的是groupId不应该只有项目隶属的组织或公司,也就是说groupId不能只有org.apache而没有maven。
artifactId:是构件ID,该元素定义实际项目中的一个Maven项目或者是子模块,如上面官方约定中所说,构建名称必须小写字母,没有其他的特殊字符,推荐使用“实际项目名称-模块名称”的方式定义,例如:spirng-mvn、spring-core等。
version:没有固定规则可以是abc,也可以123,但大家基本上都是使用1.0.0的模式
3.maven基础配置

本地仓库配置
安装好mvn后命令行执行mvn,我们可以在c盘的用户路径下看见.m2的文件夹,这就是我们的默认本地仓库。不太建议将maven本地仓库放在c盘中,c盘一般是系统盘,本地仓库内的东西会越来越多。我们进入我们的maven安装路径下的conf文件夹里面的setting文件找到localRepository的位置。



/path/to/local/repo为自己的存储路径

镜像仓库配置
找上面的setting文件打开,找到mirrors位置,将下面的配置加入
<mirror>
    <id>nexus-aliyun</id>
    <mirrorOf>central</mirrorOf>
    <name>Nexus aliyun</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>附录

其他学习内容

  • 后端学习内容
回复

举报 使用道具

您需要登录后才可以回帖 登录 | 立即注册
快速回复 返回顶部 返回列表