其实有一点问题。
我想切换bootstrap.yml的网址
它看起来如下:
spring:
application:
name: <project-name>
profiles:
active: dev
cloud:
config:
uri: http://<git-repository>:8080
fail-fast: false
这可行,但是我想拥有一个属性或任何可以在本地或其他环境中切换的东西。
我尝试查看此文档,但看不到对我有任何帮助。
最佳答案
我认为Spring Cloud与任何Spring应用程序都没有什么不同,因此您可以使用Spring配置文件。
建议在此答案上使用类似的内容:https://stackoverflow.com/a/22759706/6908551。
您可以仅为您的云配置uri定义一个单独的.yml
文件,例如cloud-config-dev.yml
,cloud-config-prod.yml
。然后,对于Java配置,您可能会有类似以下内容:
@Configuration
public class MyApplicationConfiguration {
@Bean
public static PropertySourcesPlaceholderConfigurer propertyPlaceholderConfigurer() {
String activeProfile = System.getProperty("spring.profiles.active", "production");
String ymlFilename = "cloud-config-" + activeProfile + ".yml";
PropertySourcesPlaceholderConfigurer configurer = new PropertySourcesPlaceholderConfigurer();
configurer.setLocation(new ClassPathResource(ymlFilename));
return configurer;
}
}