文章目录
- 1,com.alibaba.cloud:spring-cloud-starter-alibaba-nacos-discovery:jar:unknown was not found
- 1.1 定位及解决方案
- 1.2,简要说明dependencyManagement的作用
- 2,nacos启动失败
- 2.1 解决方案
1,com.alibaba.cloud:spring-cloud-starter-alibaba-nacos-discovery:jar:unknown was not found
1.1 定位及解决方案
项目引入服务发现的jar包后报错。
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
报错信息如下。
com.alibaba.cloud:spring-cloud-starter-alibaba-nacos-discovery:jar:unknown was not
found in https://repo.maven.apache.org/maven2 during a previous attempt.
This failure was cached in the local repository and resolution is not
reattempted until the update interval of central has elapsed or
updates are forced
直接原因是引入Jar时没有指定version,一种办法是指定version,另外一种办法是在common模块增加如下配置,好处是可以统一所有的SpringCloud Alibaba组件的version,所有依赖common模块的模块,在声明Alibaba相关依赖时,就不用再指定version了。
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>2.1.0.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
1.2,简要说明dependencyManagement的作用
简单聊聊Maven里的dependencyManagement
是什么意思。
想象一下,你正在负责一个大项目,这个项目有很多小部分(比如不同的功能模块),每个小部分都可能需要一些相同的“工具”(也就是软件库)。但是,如果每个小部分都自己去挑选和使用这些“工具”的话,可能会出现这样的情况:一个模块用了这个工具的1.0版本,另一个模块用了2.0版本。这样一来,就容易出问题,因为不同版本的工具可能不完全兼容。
为了解决这个问题,Maven里的dependencyManagement
就像是一个“工具管理员”。它在项目的一个中心位置(通常是在主项目配置文件里)列出了所有“工具”的最新版本,并且保证所有的小部分都能用上这些统一的、最新的“工具”。这样一来,就不需要每个小部分都去操心版本问题了,大大减少了出错的可能性。
而且,这个“管理员”还很灵活,如果某个小部分确实需要使用一个特殊版本的“工具”,也可以单独设置,不会受到“管理员”的限制。
这样,通过dependencyManagement
,整个项目就能更加有序、高效地运行了。
2,nacos启动失败
点击startup.cmd,不能正常启动nacos服务端,命令行界面一闪而过,也没有明确的日志信息。
原因未知,不懂但我不装。
2.1 解决方案
使用单机模式启动成功。
第一步,打开cmd命令行。
第二步,切换到到nacos安装目录下的bin目录。
D:\sofeware\nacos-server-2.1.2\nacos\bin
第三步,输入本地单机启动命令。
startup.cmd -m standalone
完美启动。