如果在PCF中声明用户定义的环境变量,我们是否需要在yml中定义spring.profile.active?

时间:2017-02-19 01:11:58

标签: spring-boot spring-cloud-netflix pivotal-cloud-foundry

在Pivotal Cloud Foundry上,假设我将这个用户定义的环境变量定义为SPRING_PROFILE_ACTIVE,其值为DEV,那么我是否需要在bootstrap.yml,SPRING.PROFILE.ACTIVE中定义(但是以yml方式)并定义配置文件命名

这也是一个保留的环境变量吗?我无法在PCF文档中找到它。

我在想一种在PCF上定义随机用户定义变量名的方法(比如ACTIVE_PROFILE),然后在我的bootstrap.yml中将它称为spring.profiles.active = $ {ACTIVE_PROFILE:local}我有灵活性提到默认值。想了解两种方法有什么区别?

1 个答案:

答案 0 :(得分:0)

该属性的名称是spring.profile s .active(复数),用于设置所有活动的配置文件。

设置环境变量SPRING_PROFILES_ACTIVE与在属性文件中设置属性spring.profiles.active相同。因此,当您设置环境变量时,不需要在属性/ yaml文件中设置它。

Spring配置文件和属性提供了一种非常灵活的配置应用程序的方法。提供配置的顺序以及如何计算默认值非常复杂。所以我不会使用其他名称' ACTIVE_PROFILE'对于同一财产或其他违约方式,除非确实需要。