Maven相关的概念 - Maven仓库和坐标

网友投稿 1103 2022-11-21

Maven相关的概念 - Maven仓库和坐标

Maven相关的概念 - Maven仓库和坐标

2. Maven相关的概念 - Maven仓库和坐标

1.目标

能够理解Maven仓库的作用

2.路径

Maven的仓库Maven的坐标

3.讲解

3.1Maven的仓库

仓库名称

作用

本地仓库

相当于缓存,工程第一次会从远程仓库(互联网)去-jar 包,将jar包存在本地仓库(在程序员的电脑上)。第二次不需要从远程仓库去-。先从本地仓库找,如果找不到才会去远程仓库找。

中央仓库

仓库中jar由专业团队(maven团队)统一维护。中央仓库的地址:data-id="t31e458f-3ihmRAWc" style="height: 30px;">

远程仓库

在公司内部架设一台私服,其它公司架设一台仓库,对外公开。

3.1.1. 常见开发存在- jar 包缓慢的问题

image-20201212232744545

一般来说,不管是我们之前手动去- jar 包,或者后续在 Maven中央仓库- jar 包,都可能因为一些-在国外,导致-缓慢的情况,这就影响到我们构建项目的效率了。

那么怎么解决呢?

答案:可以使用缓存。

3.1.2 使用 本地仓库 作为 本地jar包-的缓存

image-20201212233208788

那么在第一次-的jar包的过程还是比较缓慢的,由于第一次-完毕之后,就会将 jar 包保存在本地仓库。那么第二次开始,再次-使用该 jar 包的话,效率就会提升。

但是,本地仓库 并没有解决 第一次从 maven中央仓库 - jar 包缓慢的问题。该怎么解决呢?

3.1.3 在国内假设远程仓库服务(例如:阿里云仓库),提供国内开发人员- jar 包

image-20201212233806645

为了解决第一次从国外- jar 包缓慢的问题,阿里云将中央仓库的 jar包复制-。并在国内提供远程仓库服务,提供国内开发者-,从而解决第一次-效率低的问题。

当然,这个远程仓库我们也可以在自己的公司内部中搭建。

3.2 Maven的坐标

Maven的一个核心的作用就是管理项目的依赖,引入我们所需的各种jar包等。为了能自动化的解析任何一个java构件,Maven必须将这些Jar包或者其他资源进行唯一标识,这是管理项目的依赖的基础,也就是我们要说的坐标。包括我们自己开发的项目,也是要通过坐标进行唯一标识的,这样才能才其它项目中进行依赖引用。坐标的定义元素如下:

groupId:项目组织唯一的标识符,实际对应JAVA的包的结构 (一般写公司的组织名称 eg:com.alibaba)artifactId: 项目的名称version:定义项目的当前版本

3.2.1 访问查看Maven的中央仓库如下:

访问 jar 包。

并且从 ​​com.alibaba​​​ 的路径下可以找到很多 阿里巴巴 的项目。而这个 ​​com.alibaba​​ 就是公司的组织名称。

image-20201212234603996

3.2.2 可以在 阿里巴巴 库中的 druid 库文件

image-20201212234912385

在 ​​com.alibaba​​​ 路径下,搜索 ​​druid​​ ,我们就可以找到了。

image-20201212235005915

3.2.3 通过 组织名 + 项目名 + 版本号,就可以定位需要的 jar 包

image-20201212235155520

3.2.4 在项目中配置 jar 包的引入,只需要在 pom.xml 中配置 jar 包的 组织名 + 项目名 + 版本号 就行了。

例如:要引入druid,只需要在pom.xml配置文件中配置引入druid的坐标即可:

com.alibaba druid 1.0.9 mysql mysql-connector-java 5.1.6

但是这里存在一个很大的问题,我们一般都记不住这些 jar 包的 组织名 + 项目名 + 版本号 的信息。我们可以从哪里去获取呢?

3.2.5 可以百度 或者 国外 maven 坐标搜索 网站 来 搜索 jar包 的 坐标信息

访问 maven坐标搜索网站的地址: maven 坐标地址

image-20201213000103251

4.小结

仓库(本地仓库,中央仓库,远程仓库(私服))

如果有, 就直接获得使用如果没有, 从中央仓库找, 自动的-到本地仓库先从本地仓库找通过坐标从仓库里面找到对应的jar使用

com.alibaba druid 1.0.9

maven坐标搜索网站的地址: https://mvnrepository.com/以后工作中maven坐标是直接拷贝

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:64. Django 2 生产环境部署 uwsgi nginx
下一篇:6-SpringBoot配置-yaml基本语法-yaml数据格式
相关文章

 发表评论

暂时没有评论,来抢沙发吧~