技术:Maven中dependency三剑客浅谈(二)

简介: maven是一款项目管理工具软件,可以通过一小段信息来描述、管理、报告的管理工具。maven除了简单的程序构建外,还提供了高级的项目管理。Maven 是 Java 生态系统中最流行的构建工具之一,其核心特性之一是依赖管理。下面我们将描述和探索有助于管理 Maven 项目中的三剑客【groupId】、【artifactId】、【version】。

maven是一款项目管理工具软件,可以通过一小段信息来描述、管理、报告的管理工具。maven除了简单的程序构建外,还提供了高级的项目管理。Maven 是 Java 生态系统中最流行的构建工具之一,其核心特性之一是依赖管理。下面我们将描述和探索有助于管理 Maven 项目中的三剑客【groupId】、【artifactId】、【version】。


示例

首先看下我们通常使用过程中的实例,如下图所示:

image.png

在上述代码中,最主要的三个元素加上一个区域<dependency></dependency>构建成了一个项目模块的基本坐标。在Maven的世界中,不管是jar、pom、war,都基本上是基于这个坐标在仓库中来定位这个项目。


组ID【groupId】

从字面意思上来看,简单来说——组ID,那么groupId则是定义项目属于哪一个组,这个组往往是和项目所在的组织或者公司存在一定的关联或常态的标识他们。

image.png

例如这个就是一个比较明显的例子——com.alibaba,从这个我们可以看出来他属于阿里巴巴。我们从maven的官方仓库或阿里巴巴仓库或其他仓库可以根据这个定位到他们其他的项目,从maven仓库定位后,我们还可以找到属于这个公司的其他项目,例如

image.png


组件ID【artifactId】

从字面意思上来看,简单来说——组件ID或者人工编号,那么artifactId则定义了在当前的组中的唯一ID,前面的junit项目组中的定义的组件编号则是junit(我们发现他们同名了,这个只要在同一个项目模块中是允许的),当然fastjson也是com.alibaba其中的一个编号。当然,阿里巴巴还有其他的组件ID,例如上图中的dubbo、easyexcel等。


版本【version】

这个,我想你最熟悉不过了,他是指当前项目的使用的版本,在maven中,任何一个组件都必须要有自己的版本。

maven中的版本有很多,例如:1.0-SNAPSHOT、1.1、2022.1、6.3.2.Final、5.2.22.RELEASE、2.6-alpha等各种样式、版本。


快照版本

其中,SNAPSHOT意思为快照版本,说明该项目还在处于开发中,是不稳定的版本。他的下一个版本则是测试版本。



测试版本

测试版本也分为很多,例如alpha、beta。他俩唯一的的不同点在于内部测试还是外部测试。

image.png


生产版本

Final意思为最终版本,类似的还有其他的一些例如:rc、final、stable、release、GA、RELEASE等。

image.png

相关文章
|
29天前
|
XML Java Shell
【深入浅出Maven开发实战】「入门教程系列」带你零基础学习和开发使用Maven开发工具实战指南(实战技术总结)(一)
【深入浅出Maven开发实战】「入门教程系列」带你零基础学习和开发使用Maven开发工具实战指南(实战技术总结)
76 1
|
4月前
|
Java 关系型数据库 数据库连接
|
26天前
|
Java Maven
maven:the pom for XXX is missing, no dependency information available
maven:the pom for XXX is missing, no dependency information available
17 0
|
8月前
|
Dubbo JavaScript Java
Maven项目中的依赖出现版本冲突,最终发现是对Dependency Scope理解有误
本文记录一下遇到maven依赖版本冲突后的排查过程说明以及问题原因说明
67 0
|
Dubbo Java 测试技术
技术汇总:第十章:Maven Profile动态选择配置文件
技术汇总:第十章:Maven Profile动态选择配置文件
416 0
|
9月前
|
缓存 Java Maven
maven出现Dependency not found 和Could not find artifact的解决方法(已解决)
maven出现Dependency not found 和Could not find artifact的解决方法(已解决)
1216 0
|
10月前
|
Java Maven
Maven的dependency中无版本号的可能情况
Maven的dependency中无版本号的可能情况
411 0
|
10月前
|
XML Java Maven
Maven的dependency
Maven的dependency
|
Java 程序员 Linux
|
网络协议 安全 Java
【CI/CD技术专题】「Docker实战系列」使用Maven插件构建Docker镜像的方法
【CI/CD技术专题】「Docker实战系列」使用Maven插件构建Docker镜像的方法
196 0
【CI/CD技术专题】「Docker实战系列」使用Maven插件构建Docker镜像的方法

热门文章

最新文章