问题描述
有两个业务子项目使用Spring Cloud Function。它们将捆绑到一个 Spring Boot 应用程序中。是否可以在如下不同的属性文件中多次声明 spring.cloud.function.deFinition
属性?
项目 A:
spring:
cloud:
function:
deFinition: AProducer;AConsumer
bindings:
...
项目 B:
spring:
cloud:
function:
deFinition: BProducer;BConsumer
bindings:
...
如果不可能,如何处理这样的用例?
解决方法
您可以使用 profile
来处理这种类型的覆盖应用程序配置属性。
如果您使用最新版本的 spring-cloud
,则必须使用
spring.config.activate.on-profile
如果您使用以前版本的 spring-cloud
,您可以使用 -Dspring.profiles.active=dev
了解更多信息,请访问 this link
在这两种方式中:您应该在 application-${profile-name}.properties
中有不同的文件,或者如果您使用的是 .yml
文件,您可以有包含多个配置文件的单个文件。您可以使用 ---
符号分隔不同的配置文件。