今天给公司的项目改造成SpringCloudAlibabaNacos做注册中心
项目的基本依赖如下
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.6.3</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>2021.0.0</version> <type>pom</type>
<scope>import</scope>
</dependency>
<!--spring cloud alibaba-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>2021.1</version> <type>pom</type>
<scope>import</scope>
</dependency>
然后把nacos的配置放到bootstrap.yml中,发现不管怎么设置,就是拉取不到配置。最后发现在spring cloud 2020以后,自带的config引入方式发生改变,bootstrap.yml默认就不生效了,必须在系统配置或环境变量里配置spring.cloud.bootstrap.enabled=true或者引入依赖才可以使之生效
以下是解决方案,在项目的依赖中增加
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bootstrap</artifactId>
</dependency>
然后重新启动就可以成功的配置nacos config server信息,并且成功拉取到配置。
参考: