没有定义 spring.config.import 属性
No spring.config.import property has been defined
创建 Spring 启动云配置应用程序时出现以下错误。
有什么帮助吗?
No spring.config.import property has been defined
Action:
Add a spring.config.import=configserver: property to your configuration.
If configuration is not required add spring.config.import=optional:configserver: instead.
To disable this check, set spring.cloud.config.enabled=false or
spring.cloud.config.import-check.enabled=false.
解决方法:在pom.xml
文件中添加如下依赖:
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bootstrap</artifactId>
</dependency>
这解决了我的问题。
我在实施 spring-cloud-config
客户端时遇到了这个问题。
我添加了 bootstrap.yml
来指定配置服务器地址。
后来,在 application.yml
中添加了以下代码,解决了这个问题。
spring:
application:
name: user-service
config:
import: optional:configserver:http://localhost:9004
从 Spring Boot 2.4 开始导入配置是通过 spring.config.import
功能完成的。
将以下添加到 application.properties
连接到默认配置服务器 URL http://localhost:8888
.
spring.config.import=optional:configserver:
或 yml:
spring.config.import: "optional:configserver:"
reference 文档中描述了更多配置选项。
如果您将 org.springframework.cloud:spring-cloud-starter-bootstrap
依赖项添加到您的项目,旧版 bootstrap 功能仍然可用。
添加此依赖项也解决了我的问题:
spring-cloud-starter-bootstrap
添加bootstrap.yml
文件:
spring:
cloud:
config:
enabled: true
uri: http://localhost:9296
其中 9296 是您的云配置服务器端口
并添加以下依赖项:
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bootstrap</artifactId>
</dependency>
如果上面的方法不起作用,只需将以下属性添加到您的 application.yml
文件中即可停止端口检查,因为您已经在 bootstrap.yml
中定义了它
spring:
cloud:
config:
import-check:
enabled: false
错误消息本身对解决方案有建议/操作:
Add a spring.config.import=configserver: property to your configuration.
If configuration is not required add spring.config.import= optional:configserver: instead.
To disable this check, set spring.cloud.config.enabled=false
or
spring.cloud.config.import-check.enabled=false.
根本原因是Spring Boot 2.4 更改了其默认功能。新的 spring.config.import
属性 是强制性的。
要修复,请添加新的 spring.config.import
属性。这是在 application.yml
.
中对我有用的示例
spring:
config:
import: "optional:configserver:"
Here 是您需要设置不同值时的文档:
Spring Boot Config Data Import
Spring Boot 2.4 introduced a new way to import configuration data via the spring.config.import property. This is now the default way to bind to Config Server.
我通过删除依赖项spring-cloud-starter-config
克服了错误。如果你保留它,那么它会一直提示。我认为使用较新的 Spring 引导我们不需要依赖项。
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
bootstrap.properties
:
spring.application.name=config-client-app
eureka.client.server-url.defaultZone=http://localhost:8761/eureka
spring.config.import=optional:configserver:
Spring 我正在使用的版本:
<spring-cloud.version>2020.0.3</spring-cloud.version>
我在本地主机的端口 8888 上使用 Spring 云配置服务器,Spring 版本 2.5.4 和 Java 16
我的bootstrap.properties:
spring.application.name=hr-worker
# Server Config
spring.cloud.config.enabled=true
spring.cloud.config.uri= http://localhost:8888
为了避免出现错误,我只是将此配置放入 application.properties:
spring.config.import=optional:configserver:http://localhost:8888
您收到此错误是因为 您使用的是新版本的 Spring Boot 和 Spring Cloud,但是 您正在尝试以旧方式配置它。
原因
Spring Cloud Config Client 已更改,技术上 bootstrap.properties
和 bootstrap.yml
文件已弃用 .
正确的解决方案
- 将所有属性从
boostrap.properties
移动到 application.properties
(也可以是 .yml
)
- 删除
bootstrap.properties
个文件
- 将
spring.cloud.config.uri=http://localhost:8888
替换为spring.config.import=configserver:http://localhost:8888
这是告诉您Spring启动应用程序您想要从Spring云配置服务[=50=加载属性的正确方法] 即 localhost:8888
上的 运行。
旧版解决方案
如果您想使用遗留 bootstrap.properties
文件,您只需添加以下依赖项:
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bootstrap</artifactId>
</dependency>
请注意,这是一个 已弃用的机制 ,因此如果您正在创建一个新项目,请继续使用正确的解决方案.
我使用 spring 2.4.4 版本克服了错误 我当时使用的是 2.5.1
application.properties:
`
spring.application.name=testserv
spring.profiles.active=prodtest
spring.config.import=optional:configserver:http://localhost:8071
spring.cloud.config.enabled=true
spring.cloud.config.uri=http://localhost:8071
management.endpoints.web.exposure.include=*
eureka.instance.preferIpAddress = true
eureka.client.registerWithEureka = true
eureka.client.fetchRegistry = true
eureka.client.serviceUrl.defaultZone = http://localhost:8070/eureka/
`
2020.0.3
对于 spring 版本 > 2.6.6
在 application.property.
下方添加 属性
spring.application.name=... //应用程序名称
spring.profiles.active=产品测试
spring.config.import=可选:configserver:http://localhost:8071
spring.cloud.config.enabled=真
spring.cloud.config.uri=http://localhost:8071
management.endpoints.web.exposure.include=*
eureka.instance.preferIpAddress = 真
eureka.client.registerWithEureka = 真
eureka.client.fetchRegistry = 真
eureka.client.serviceUrl.defaultZone = http://localhost:8070/eureka/
创建 Spring 启动云配置应用程序时出现以下错误。 有什么帮助吗?
No spring.config.import property has been defined
Action:
Add a spring.config.import=configserver: property to your configuration.
If configuration is not required add spring.config.import=optional:configserver: instead.
To disable this check, set spring.cloud.config.enabled=false or
spring.cloud.config.import-check.enabled=false.
解决方法:在pom.xml
文件中添加如下依赖:
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bootstrap</artifactId>
</dependency>
这解决了我的问题。
我在实施 spring-cloud-config
客户端时遇到了这个问题。
我添加了 bootstrap.yml
来指定配置服务器地址。
后来,在 application.yml
中添加了以下代码,解决了这个问题。
spring:
application:
name: user-service
config:
import: optional:configserver:http://localhost:9004
从 Spring Boot 2.4 开始导入配置是通过 spring.config.import
功能完成的。
将以下添加到 application.properties
连接到默认配置服务器 URL http://localhost:8888
.
spring.config.import=optional:configserver:
或 yml:
spring.config.import: "optional:configserver:"
reference 文档中描述了更多配置选项。
如果您将 org.springframework.cloud:spring-cloud-starter-bootstrap
依赖项添加到您的项目,旧版 bootstrap 功能仍然可用。
添加此依赖项也解决了我的问题: spring-cloud-starter-bootstrap
添加bootstrap.yml
文件:
spring:
cloud:
config:
enabled: true
uri: http://localhost:9296
其中 9296 是您的云配置服务器端口
并添加以下依赖项:
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bootstrap</artifactId>
</dependency>
如果上面的方法不起作用,只需将以下属性添加到您的 application.yml
文件中即可停止端口检查,因为您已经在 bootstrap.yml
spring:
cloud:
config:
import-check:
enabled: false
错误消息本身对解决方案有建议/操作:
Add a spring.config.import=configserver: property to your configuration.
If configuration is not required add spring.config.import= optional:configserver: instead.
To disable this check, set spring.cloud.config.enabled=false
or
spring.cloud.config.import-check.enabled=false.
根本原因是Spring Boot 2.4 更改了其默认功能。新的 spring.config.import
属性 是强制性的。
要修复,请添加新的 spring.config.import
属性。这是在 application.yml
.
spring:
config:
import: "optional:configserver:"
Here 是您需要设置不同值时的文档:
Spring Boot Config Data Import
Spring Boot 2.4 introduced a new way to import configuration data via the spring.config.import property. This is now the default way to bind to Config Server.
我通过删除依赖项spring-cloud-starter-config
克服了错误。如果你保留它,那么它会一直提示。我认为使用较新的 Spring 引导我们不需要依赖项。
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
bootstrap.properties
:
spring.application.name=config-client-app
eureka.client.server-url.defaultZone=http://localhost:8761/eureka
spring.config.import=optional:configserver:
Spring 我正在使用的版本:
<spring-cloud.version>2020.0.3</spring-cloud.version>
我在本地主机的端口 8888 上使用 Spring 云配置服务器,Spring 版本 2.5.4 和 Java 16
我的bootstrap.properties:
spring.application.name=hr-worker
# Server Config
spring.cloud.config.enabled=true
spring.cloud.config.uri= http://localhost:8888
为了避免出现错误,我只是将此配置放入 application.properties:
spring.config.import=optional:configserver:http://localhost:8888
您收到此错误是因为 您使用的是新版本的 Spring Boot 和 Spring Cloud,但是 您正在尝试以旧方式配置它。
原因
Spring Cloud Config Client 已更改,技术上 bootstrap.properties
和 bootstrap.yml
文件已弃用 .
正确的解决方案
- 将所有属性从
boostrap.properties
移动到application.properties
(也可以是.yml
) - 删除
bootstrap.properties
个文件 - 将
spring.cloud.config.uri=http://localhost:8888
替换为spring.config.import=configserver:http://localhost:8888
这是告诉您Spring启动应用程序您想要从Spring云配置服务[=50=加载属性的正确方法] 即 localhost:8888
上的 运行。
旧版解决方案
如果您想使用遗留 bootstrap.properties
文件,您只需添加以下依赖项:
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bootstrap</artifactId>
</dependency>
请注意,这是一个 已弃用的机制 ,因此如果您正在创建一个新项目,请继续使用正确的解决方案.
我使用 spring 2.4.4 版本克服了错误 我当时使用的是 2.5.1
application.properties:
`
spring.application.name=testserv
spring.profiles.active=prodtest
spring.config.import=optional:configserver:http://localhost:8071
spring.cloud.config.enabled=true
spring.cloud.config.uri=http://localhost:8071
management.endpoints.web.exposure.include=*
eureka.instance.preferIpAddress = true
eureka.client.registerWithEureka = true
eureka.client.fetchRegistry = true
eureka.client.serviceUrl.defaultZone = http://localhost:8070/eureka/
`
对于 spring 版本 > 2.6.6 在 application.property.
下方添加 属性spring.application.name=... //应用程序名称
spring.profiles.active=产品测试
spring.config.import=可选:configserver:http://localhost:8071
spring.cloud.config.enabled=真
spring.cloud.config.uri=http://localhost:8071
management.endpoints.web.exposure.include=*
eureka.instance.preferIpAddress = 真
eureka.client.registerWithEureka = 真
eureka.client.fetchRegistry = 真
eureka.client.serviceUrl.defaultZone = http://localhost:8070/eureka/