SpringCloud项目整合nacos报错
问题描述
SpringCloud 整合nacos,依赖如下:
<properties>
<java.version>17</java.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<spring-boot.version>3.0.2</spring-boot.version>
<spring-cloud.version>2022.0.0</spring-cloud.version>
<spring-cloud-alibaba.version>2022.0.0</spring-cloud-alibaba.version>
</properties>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
<version>${spring-cloud-alibaba.version}</version>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
<version>${spring-cloud-alibaba.version}</version>
</dependency>
构建maven时报错,报错如下:
com.alibaba.cloud:spring-cloud-starter-alibaba-nacos-config:jar:unknown was not found in https://maven.aliyun.com/repository/public during a previous attempt. This failure was cached in the local repository and resolution is not reattempted until the update interval of alimaven has elapsed or updates are forced
原因分析
1.查看报错内容,发现没有找到对应的依赖包
2.检查maven中的依赖项,发现确实依赖没有被正确下载
解决方法
以下是我当时的思路:
-
考虑springboot,springcloud,springcloud alibaba版本依赖是否出现冲突。分别在 Spring官网 和 SpringCloud Alibaba官网 检查对应关系,确认无误
-
直接删掉
<version>${spring-cloud-alibaba.version}</version>
添加springCloud alibaba的依赖:<dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-alibaba-dependencies</artifactId> <version>2022.0.0.0</version> <type>pom</type> <scope>import</scope> </dependency>
想着让maven进行自动版本仲裁,但仍然没有解决问题
-
直接手动输入version,检查是否能解决:
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
<version>2022.0.0.0</version>
</dependency>
发现竟然可以,那就说明确实是版本指定的问题
- 重新再检查版本配置
<version>${spring-cloud-alibaba.version}</version>
有些同学可能一眼就看出了问题:
<spring-cloud-alibaba.version>2022.0.0</spring-cloud-alibaba.version>
版本号应该是 2022.0.0.0
由于跟springcloud的版本号类似,看了一眼觉得很像就直接复制了
修改完成后,项目顺利运行
如果大家遇到类似的问题,也可以先检查一下自己的版本号