Maven 坐标

坐标

  1. 坐标是 Maven 中最为核心的概念
  2. 在前一篇博客提到,我们采用了 Maven 方式构建项目之后,取消了各个模块中的 lib 文件夹,不再导入 jar 包到 Lib 文件夹中,而是通过 pom.xml 这个配置文件从仓库中读取
  3. 那么问题来了:如何在 pom.xml 这个配置文件中精确的定位到你所需要的 jar 呢
  4. 这里就引入了坐标这个概念(GAV),通过坐标,在互联网上精确的定位到一个所需要的 jar 包
    1. groupId:定义当前Maven组织名称
    2. artifactId:定义实际项目名称
    3. version:定义当前项目的当前版本
坐标查找
  1. 我们使用的 jar 包的坐标都在一个网站中有具体的引用规范:https://mvnrepository.com/

  2. 我们以一个各个模块都可能用到的日志记录 jar包:log4j 为例

  3. 在这个网站的搜索栏内搜索这个 log4j ,就会出现如图所示部分
    Maven 坐标_第1张图片

  4. 我们点击第二个 Apache Log4j,进入如下界面
    Maven 坐标_第2张图片

  5. 我们点击最多人使用的 1.2.17 ,进入如下界面
    Maven 坐标_第3张图片

  6. 红框内的内容即为我们所需要的坐标(依赖),我们在 pom.xml 文件中加入这个坐标,eclipse 或 IDEA 等编辑器就会自动从中央仓库中下载这个 jar 包,并且放入本地仓库,例如
    Maven 坐标_第4张图片Maven 坐标_第5张图片

总结
  1. Maven 通过坐标定位,替代了之前 lib 文件夹中放 jar 包的方式
  2. 这样做之后,首先各个模块内省去了 Lib 文件夹导包这一步
  3. 同时,对于不同模块之间都会重复用到的 jar 包,除去第一次需要从互联网上中央仓库下载外,其他时刻只需要从本地仓库中下载即可。
  4. 这是一种抽取重复类的思想,这种思想在之前的学习种已经见到很多次了,核心部分就是:抽取不同地方复用率高的部分,单独存在,其他部分调用这个存在即可。之前是对代码抽取,这次是对 jar 包抽取,猜测之后可能会对功能抽取。。

你可能感兴趣的:(Maven笔记)