Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用特定的application.properties文件将Spring引导应用程序部署到Heroku_Spring_Spring Boot_Heroku_Deployment - Fatal编程技术网

使用特定的application.properties文件将Spring引导应用程序部署到Heroku

使用特定的application.properties文件将Spring引导应用程序部署到Heroku,spring,spring-boot,heroku,deployment,Spring,Spring Boot,Heroku,Deployment,我想为每个环境定义不同的application.properties文件。 在本地工作时,我想定义一个H2数据库。对于测试环境(Heroku),我有一个MySQL数据库配置。因此,我想为这些工作案例定义完全不同的文件 目前,我有用于本地porpouse的application.properties,以及要在Heroku中使用的application tst.properties。但我不知道在部署时如何选择合适的 我的目标是在Heroku中运行的应用程序的配置与在本地计算机中运行的应用程序的配置不

我想为每个环境定义不同的
application.properties
文件。 在本地工作时,我想定义一个H2数据库。对于测试环境(Heroku),我有一个MySQL数据库配置。因此,我想为这些工作案例定义完全不同的文件

目前,我有用于本地porpouse的
application.properties
,以及要在Heroku中使用的
application tst.properties
。但我不知道在部署时如何选择合适的


我的目标是在Heroku中运行的应用程序的配置与在本地计算机中运行的应用程序的配置不同。

您可以使用
spring.profiles.active
属性()控制哪个配置文件处于活动状态。在Heroku上,您可以使用配置变量通过或

CLI 要使用cli设置
tst
配置文件,请尝试

$ heroku config:set SPRING_PROFILES_ACTIVE=tst
仪表板 导航到
settings
选项卡,将键设置为
SPRING\u PROFILES\u ACTIVE
并将值设置为
tst
,然后单击
save

平台API 您可以使用多种工具来实现相同的结果,但是遵循平台API文档,您可以使用
curl

$ curl -n -X PATCH https://api.heroku.com/apps/$APP_ID_OR_NAME/config-vars \
  -d '{ "SPRING_PROFILES_ACTIVE": "tst" }' \
  -H "Content-Type: application/json" \
  -H "Accept: application/vnd.heroku+json; version=3"

请注意,将
spring.profiles.active
属性设置为配置变量将影响整个应用程序。

您是如何发现Heroku使用spring\u profiles\u active env变量来设置
spring.profiles.active
属性的?文档,真的。SpringBoot描述了如何使用env变量设置活动概要文件。javadoc for描述了如何解析环境变量。heroku文档解释了如何设置,
config vars