如何在Spring Boot中设置默认环境

Fab*_*ner 9 environment-variables spring-boot

如何在Spring Boot中设置默认环境?

我投入application.properties:

spring.profiles.include=prod,dev
spring.profiles.active=prod
Run Code Online (Sandbox Code Playgroud)

在用户变量中:

SPRING_PROFILES_ACTIVE = dev
Run Code Online (Sandbox Code Playgroud)

因此,当我开发我的环境时,我的环境是dev,但是当我生成我的.war并在tomcat中部署时,他仍然使用dev环境(我在另一个comp中部署而没有其他conf)

如何设置我的默认环境(如果他在用户变量或命令行中没有找到任何产品)?

Edu*_*rdo 5

你需要的是:

1)定义您需要的活动配置文件,例如:

spring.profiles.active=dev
Run Code Online (Sandbox Code Playgroud)

在这个例子中,加载的文件将是 application-dev.properties

现在,如果您需要根据安装war文件的位置切换到不同的环境,您可以做的是将此变量设置为您想要的每个环境中的系统变量,这样每个环境对于相同的键都有不同的值, 就像是:

-Dspring.profiles.active=dev
Run Code Online (Sandbox Code Playgroud)

在我的情况下,我使用 Tomcat 并在文件中声明此键/值setenv.sh,您需要根据您使用的服务器分配该值。


jst*_*jst 4

查看有关配置文件特定属性的 Spring Boot 指南

http://docs.spring.io/spring-boot/docs/1.3.0.BUILD-SNAPSHOT/reference/htmlsingle/#boot-features-external-config-profile-specific-properties

我会从 application.properties 中删除您所拥有的内容。您告诉它包含(而不是替换)开发和生产配置文件。一个更简单的设置是

  1. application.properties(如果未设置配置文件)
  2. application-dev.properties(用于开发配置文件)
  3. application-prod.properties(用于产品配置文件)