所以我的屬性檔案看起來像: -
spring:
profiles:
active: {SPRING_PROFILE:default}
---
spring:
application:
name: application-mode1
config:
activate:
on-profile: mode1
config:
filter:
ruleId: 1
---
spring:
application:
name: application-mode2
config:
activate:
on-profile: mode2
config:
filter:
ruleId: 2
我在運行時設定 SPRING_PROFILE 值。因此,在同一環境中有兩個相同應用程式的部署。這兩個組態檔(模式 1,模式 2)被映射到特定的部署作為 spring 啟動日志“訊息”:“以下組態檔處于活動狀態:模式 1”,建議但在獲取 ruleId 時,只有最后提到和更新的值是由兩個應用程式獲取,而不是組態檔特定的規則 ID。在這種情況下,它是 2,但如果我反轉它,這兩個應用程式都將是 1。請提出任何替代方案。這個應用程式是使用 Kubernetes 部署的。
uj5u.com熱心網友回復:
您使用的配置僅適用于Spring boot 2.4及更高版本(請參閱相關博文)。
在此之前,您必須使用該spring.profiles屬性。例如:
spring:
profiles:
active: ${SPRING_PROFILE:default} # The dollar sign was also missing
---
spring:
application:
name: application-mode1
profiles: mode1
config:
filter:
ruleId: 1
---
spring:
application:
name: application-mode2
profiles: mode2
config:
filter:
ruleId: 2
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/452757.html
