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
Spring boot 在linux中将spring boot应用程序部署为服务时,如何动态传递或指定application.yml?_Spring Boot - Fatal编程技术网

Spring boot 在linux中将spring boot应用程序部署为服务时,如何动态传递或指定application.yml?

Spring boot 在linux中将spring boot应用程序部署为服务时,如何动态传递或指定application.yml?,spring-boot,Spring Boot,下面的文档详细介绍了在linux中部署spring boot应用程序作为服务的选项- 但是在这里,我没有看到如何在机器上指定customapplication.yml的选项。i、 e我想维护一个application.yml,其中包含机器中的所有凭据和其他详细信息,并在我调用“service myApp start”时将其传递给服务 正如文档中提到的,我将运行 $sudo ln-s/var/myapp/myapp.jar/etc/init.d/myapp $service myapp start

下面的文档详细介绍了在linux中部署spring boot应用程序作为服务的选项-

但是在这里,我没有看到如何在机器上指定customapplication.yml的选项。i、 e我想维护一个application.yml,其中包含机器中的所有凭据和其他详细信息,并在我调用“service myApp start”时将其传递给服务

正如文档中提到的,我将运行 $sudo ln-s/var/myapp/myapp.jar/etc/init.d/myapp $service myapp start

并检查如何在此传递application.yml路径

请提供这方面的投入


谢谢

Spring boot还可以从外部文件读取配置

在服务的“启动”脚本中使用:
--spring.config.location=

例如:

 java -jar myproject.jar --spring.config.location=file:/application.yml

Spring boot还可以从外部文件读取配置

在服务的“启动”脚本中使用:
--spring.config.location=

例如:

 java -jar myproject.jar --spring.config.location=file:/application.yml

有几个选项可供选择如何实施:

1.将配置文件的路径指定为spring属性

java-jar myproject.jar --spring.config.location=classpath:/default.properties,classpath:/override.properties

2.将propertyConfigurer bean与环境变量一起用作配置文件名的一部分:

<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
        <property name="locations">
            <list>
                <value>classpath:META-INF/spring/common_configuration.properties</value>
                <value>classpath:META-INF/spring/configuration-${ENVIRONMENT_NAME}.properties</value>
                <value>classpath:META-INF/spring/database-${ENVIRONMENT_NAME}.properties</value>
            </list>
        </property>
        <property name="ignoreResourceNotFound" value="true"/>
        <property name="searchSystemEnvironment" value="true"/>
        <property name="systemPropertiesModeName" value="SYSTEM_PROPERTIES_MODE_OVERRIDE"/>
    </bean>

类路径:META-INF/spring/common_configuration.properties
类路径:META-INF/spring/configuration-${ENVIRONMENT\u NAME}.properties
类路径:META-INF/spring/database-${ENVIRONMENT\u NAME}.properties
3.概况 使用标准文件名和配置位置,配置文件变量作为名称的一部分

application-dev.properties

application-prod.properties

应用程序测试属性

以及在启动应用程序时设置配置文件

--spring.profiles.active=dev,prod


有几个选项可供选择如何实施:

1.将配置文件的路径指定为spring属性

java-jar myproject.jar --spring.config.location=classpath:/default.properties,classpath:/override.properties

2.将propertyConfigurer bean与环境变量一起用作配置文件名的一部分:

<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
        <property name="locations">
            <list>
                <value>classpath:META-INF/spring/common_configuration.properties</value>
                <value>classpath:META-INF/spring/configuration-${ENVIRONMENT_NAME}.properties</value>
                <value>classpath:META-INF/spring/database-${ENVIRONMENT_NAME}.properties</value>
            </list>
        </property>
        <property name="ignoreResourceNotFound" value="true"/>
        <property name="searchSystemEnvironment" value="true"/>
        <property name="systemPropertiesModeName" value="SYSTEM_PROPERTIES_MODE_OVERRIDE"/>
    </bean>

类路径:META-INF/spring/common_configuration.properties
类路径:META-INF/spring/configuration-${ENVIRONMENT\u NAME}.properties
类路径:META-INF/spring/database-${ENVIRONMENT\u NAME}.properties
3.概况 使用标准文件名和配置位置,配置文件变量作为名称的一部分

application-dev.properties

application-prod.properties

应用程序测试属性

以及在启动应用程序时设置配置文件

--spring.profiles.active=dev,prod