要阅读我使用的Spring配置文件:
<beans profile="LOC">
我将此属性设置为jvm属性:
-Dspring.profiles.active=LOC
我想使用已配置的现有属性:
-Dmyproperty=LOC
我可以使用弹簧配置文件来使用现有属性(myproperty
)而不是spring.profiles.active
吗?
答案 0 :(得分:1)
看看source code of spring-core.jar AbstractEnvironment.java课程。系统属性名称在此处硬编码:
/**
* Name of property to set to specify active profiles: {@value}. Value may be comma
* delimited.
* <p>Note that certain shell environments such as Bash disallow the use of the period
* character in variable names. Assuming that Spring's {@link SystemEnvironmentPropertySource}
* is in use, this property may be specified as an environment variable as
* {@code SPRING_PROFILES_ACTIVE}.
* @see ConfigurableEnvironment#setActiveProfiles
*/
public static final String ACTIVE_PROFILES_PROPERTY_NAME = "spring.profiles.active";
所以是的,你可以破解它并将其更改为你的属性名称,或者使其可配置并重新编译你自己的版本(孩子们请不要在家里尝试这个)。