问题:Cannot resolve com.alibaba.cloud:spring-cloud-starter-alibaba-nacos-discovery:1.4.1

意思就是不能用maven加载到这个1.4.1版本的 artifactId 为 spring-cloud-starter-alibaba-nacos-discovery的jar,说白了就是maven库里面没有找到这个artifactId的jar

问题产生的背景:本人最近在学spring cloud alibaba,然后一个教学视频里老师引用的spring boot 为2.1.3.RELEASE版本,spring cloud 为Greenwich.RELEASE版本,spring cloud alibaba为2.1.2.RELEASE。然后讲到nacos服务注册发现章节,需要在项目里导入nacos的jar包,视频中的maven写法如下:

<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>

我就照着写,发现报错Cannot resolve com.alibaba.cloud:spring-cloud-starter-alibaba-nacos-discovery:unKnow

我查了网上关于unKnow的错误,说是maven中没有明写版本号,于是我就写了个版本号1.4.1,结果的maven如下:

<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId><version>1.4.1</version>
</dependency>

结果就报上面问题的那个错误。然后各种百度这个错误,很多回答我都试了,都不行。后来怀疑是不是maven的配置文件中引入的阿里云maven仓库地址里面根本就不包含nacos-discovery这个jar包。我的maven是3.6.版本,在maven文件夹下有个conf文件夹,下面有个settings.xml文件。在这个文件下有个mirrors节点,然后在里面就可以配置阿里云的maven仓库地址了。下图是我的maven的settings.xml文件的路径:

下图是我的settings.xml配置文件中关于maven仓库地址的配置

由于我怀疑阿里云的maven仓库里根本就不包含nacos的jar,所以我网上搜了一些其他的maven仓库地址,基本上把网上能搜到的地址都试了一遍,仍然报最开始的那个问题错误。此时,我有点抓狂了!!!到底是什么问题呢,既然别人能把这个nacos的jar导下来,那么maven仓库肯定有这个啊。于是我怀疑是不是我的nacos版本错误了。于是我去nacos的官网查询现有nacos有哪些版本。

这里我要说一下问什么我开始一直用1.4.1作为版本呢,那是因为我在官网上看了一个nacos的版本说明,说明截图如下:

注意图中红色框内容,说如果spring cloud alibaba的版本是2.2.5或者2.1.4或者2.0.4,那么nacos的版本为1.4.1

就是这个截图内容坑了我一晚上,我一直以为maven仓库中有1.4.1版本的spring-cloud-starter-alibaba-nacos-discovery

其实maven仓库里根本就没有这个1.4.1的spring-cloud-starter-alibaba-nacos-discovery,后来我理解这里的版本关系其实应该说的是nacos的服务端的版本和spring cloud alibaba的版本关系,maven仓库中的spring-cloud-starter-alibaba-nacos-discovery的版本关系和这个图里的版本根本就没半毛钱关系,泪奔啊,官网也是个坑啊,写的糊里糊涂的,把我这种刚开始学的人整的蒙蒙的。。。。

好了,接着上面的思路。我想看看阿里云maven仓库里到底有没有1.4.1的spring-cloud-starter-alibaba-nacos-discovery,于是找到了阿里云的maven仓库主页https://maven.aliyun.com/mvn/guide

图里面明显看到,阿里云maven仓库的地址发生变化,所以我把maven的settings.xml种的配置修改成最新的阿里云仓库地址了。然后在阿里云maven仓库主页面的左边列表种选择“文件搜索”功能,进去会有2种搜索模式,一种是关键字、一种是直接输入

groupId、artifactId来搜索,如下图:

通过搜索,发现spring-cloud-starter-alibaba-nacos-discovery根本就没有1.4.1这个版本。。。汗。。。。

nacos的0.X的版本是对应的spring cloud的版本,不是毕业版本,它的maven引入写法都不一样,写法如下(用0.1.2.RELEASE版本做例子):

<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId><version>0.1.2.RELEASE</version>
</dependency>

nacos的毕业版本是从1.5开始的。nacos的毕业版本分为1.5.X、2.0.X、2.1.X版本,分别对应了spring boot的1.5.X、2.0.X、2.1.X版本。nacos毕业版本的maven写法如下(以2.1.4.RELEASE版本做例子):

<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId><version>2.1.4.RELEASE</version>
</dependency>

nacos的毕业版本的对应关系其实在nacos的官网上有说明,如下图:

从上面这个问题的解决过程,自己学到了如何直接去阿里云maven仓库官网里去找对应的依赖,如果以后有依赖忘记如何引入,可以直接去maven仓库官网看每个jar的依赖写法。大家如果以后有引入依赖失败的情况,也可以参考这些步骤去解决哦。

而且建议大家赶紧把阿里云maven仓库的地址更新成最新的吧,网上都是一大堆你抄我我抄你的答案,给的maven配置文件中的阿里云的maven仓库地址都是老地址,而且也没有明确说明central仓和public的区别,看看阿里云maven仓库的官网就能发现,public仓是central仓和jcenter仓的聚合仓,那我们在平时用时肯定用public仓要保险一点咯。

Maven引入nacos的版本问题以及如何在阿里Maven仓库中找到想要的jar和Maven中的groupId、artifactId、version相关推荐

  1. 使用maven插件构建docker镜像并推送到阿里镜像仓库

    1.阿里云镜像仓库 阿里云提供了docker镜像仓库,可以上传私有的镜像 2.com.spotify 提供的docker构建插件 docker-maven-plugin <plugin>& ...

  2. maven引入hadoop_Maven引入hadoop依赖包出错解决办法

    错误: ArtifactTransferException: Failure to transfer org.apache.hadoop:hadoop-hdfs:jar:2.6.0 from http ...

  3. maven引入本地jar包

    为什么80%的码农都做不了架构师?>>>    1.引入依赖 <dependencies><dependency><groupId>com.bai ...

  4. 把Maven本地仓库修改为阿里云仓库

    为什么要把Maven本地仓库修改为阿里云仓库?还不是因为下载jar包的时候慢嘛,几十kb,想练习一下项目都不行,还不是一般的慢,都把我急的~ 1,下载安装maven 2,修改settings.xml文 ...

  5. maven使用aliyun,阿里云仓库

    进入maven安装目录 找到conf/settings.xml 在mirrors节点下添加: <?xml version="1.0" encoding="UTF-8 ...

  6. W2-1:Maven引入外部依赖——以GSON的使用为例

    系列文章目录 软工实录 文章目录 系列文章目录 前言 一.创建Maven项目 二.使用JSON 三.使用GSON 四.问题及解决 总结 前言 Maven 教程 JSON JSON是一种文本形式的数据交 ...

  7. IDEA本地仓库存在jar包但maven引入仍然报红

    IDEA本地仓库存在jar包但maven引入仍然报红 一个项目下S分多个模块A\B\C\D,本地仓库是同一个,每个模块有自己的pom文件,其中一个子模块A引入了spring-test <depe ...

  8. maven多模块依赖版本不一致问题

    maven多模块依赖版本不一致问题 1. 问题描述 2. 问题分析 2.1 maven help插件分析 2.2 maven依赖树分析 2.3 父类定义版本 3. 解决方案 4.项目pom 4.1 父 ...

  9. maven引入依赖时,识别不到本地仓库jar包问题

    maven引入依赖时,识别不到本地jar包问题 目录 maven引入依赖时,识别不到本地jar包问题 一.本地环境问题 二.仓库问题 问题描述:本地仓库存在jar包,maven引入依赖时却报错,提示找 ...

最新文章

  1. 自学python有哪些方向-机械想自学python可以学习哪个方向?
  2. Hibernate悲观锁/乐观锁
  3. 自动备份网站和数据库打包并上传FTP服务器并删除前30天文件
  4. c++ 重载 覆盖 隐藏的区别和执行方式
  5. 有条件了!筛选,MySQL条件查询SELECT-WHERE
  6. 程序员面试金典 - 面试题 05.04. 下一个数(线性扫描)
  7. 计算机应用技术高数挂科,这7个专业难度太大,挂科率很高,只有学神才敢报考...
  8. CentOS6下Xen 4.1的安装(编译linux3.0内核)
  9. 修复Mac上的“ Safari无法找到服务器”错误的解决方法
  10. 研磨设计模式-设计模式的基础-设计模式是什么
  11. JavaScript制作页面跳转效果
  12. 最短路算法c++(dijsktra,floyd,spfa)
  13. 大数据AI Notebook产品介绍和对比
  14. 数据结构学习(考研408)
  15. 优酷视频APP的缓存视频在哪里
  16. 纯shell实现文本替换
  17. SICP读书笔记 2.5
  18. 微信小程序--跃动方块
  19. ansys,单元体转换以及如何查看当前单元体的类型,一些指令讲解。
  20. RAC:Oracle 11GR2 数据库一键安装

热门文章

  1. C# 文件操作,查看所有的文件夹和文件
  2. 索尼录音笔怎么导出录音内容_搜狗新品发布,引领录音笔行业走向AI时代!
  3. 富士康需要感恩苹果吗?
  4. Java初级应用——编写西游记人物类,属性包括,身高,名字,武器。用一个测试类测试。
  5. linux id和iduser,su userid 和 su - userid的区别
  6. ESXI命令行启动虚拟机
  7. centos java 安装
  8. 微服务 微服务架构
  9. 中国戊酰氯市场趋势报告、技术动态创新及市场预测
  10. 花店网站服务器的稳定性报告,在线花店网站系统的设计与实现.doc