本文最后更新于 2024-08-27,文章内容可能已经过时。

一、问题描述

启动Springcloud项目后,出现报错:No spring.config.import property has been defined

二、解决思路

产生问题的原因是bootstrap.properties比application.properties的优先级要高。由于bootstrap.properties是系统级的资源配置文件,是用在程序引导执行时更加早期配置信息读取;而application.properties是用户级的资源配置文件,是用来后续的一些配置所需要的公共参数。

但是在SpringCloud 2020.* 版本把bootstrap禁用了,导致在读取文件的时候读取不到而报错,所以我们只要把bootstrap重新导入进来就会生效了。

三、解决方案

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-bootstrap</artifactId>
    <version>${bootstrap.version}</version>
</dependency>