maven中的坐标

167 阅读2分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

坐标

我们上学时学过数学中的坐标,是根据坐标系维度使用对应数量的向量作为空间的坐标系,可以帮助我们在空间中唯一地定位到一个点。

而在maven中的坐标也类似,我们这里引入三个向量,通过这三个“向量”的值,我们可以在maven仓库中唯一地定位到一个jar包。

Maven 坐标是依赖的前提,所有 Maven 项目必须明确定义自己的坐标,只有这样,它们才可能成为其他项目的依赖。 当一个项目的构件成为其他项目的依赖时,该项目的坐标才能体现出它的价值。 当 Maven 项目需要声明某一个依赖时,通常只需要在其 POM 中配置该依赖的坐标信息,Maven 会根据坐标自动将依赖下载到项目中。

maven坐标系中的三个向量:

  • groupId:公司或组织的id
  • artifactId:一个项目或者是项目中的一个模块的id
  • version:版本号

三个向量的取值方式:

  • groupId: 公司或组织域名的倒序,通常也会加上项目的名称

    • 例如:com.atguigu.maven
  • artifactId: 模块的名称,将来作为maven工程的工程名

  • version: 模块的版本号,根据自己的需要设定

    • 例如:SNAPSHOT表示快照版本号,正在迭代过程中,不稳定的版本
    • 例如:RELEASE表示正式版本

举例:

  • groupId: com.atguigu.maven
  • artifactId: pro01-atguigu-maven
  • version: 1.0-SNAPSHOT

注:项目和工程不是等价的,一个项目中可能包含有许多个工程

坐标和仓库中jar包的存储路径之间的对应关系

坐标:

<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>

上面坐标对应的jar包在maven本地仓库中的位置:

maven本地仓库根目录\javax\servlet\servlet-api\2.5\servlet-api-2.5.jar

对应位置就是从上到下,从左至右,一一拆分生成文件夹,将jar包放到对应的文件夹下。

maven本地仓库根目录是我们前边自己在settings.xml文件中配置过的目录

我们要学会根据坐标找到对应本地仓库中的jar包。