如何在commandLine中传递application.properties以获得Spring启动应用程序?

时间:2015-08-04 21:04:33

标签: spring-boot spring-4

我有spring boot个应用,我希望在application.propertiescommandLine传递start-up个文件。

,即当我运行mvn spring-boot:run --application.properties

我将在src/main/resources中有一个默认的application.properties。但这仅用于testing目的。在production运行中,我想传递property file中的commandLine.

我知道传递单个参数,例如

mvn spring-boot:run --server.port=9001

但我有很多这样的属性,如果可能的话,我更愿意传递一个属性文件。

3 个答案:

答案 0 :(得分:14)

您可以使用spring.config.location属性执行此操作:

mvn spring-boot:run -Dspring.config.location=your.properties

答案 1 :(得分:1)

如果有人觉得它对我有用。如果您想在使用 maven spring boot run 命令时将单个应用程序属性作为参数传递,您可以使用参数 spring-boot.run.jvmArguments。

例如:

mvn spring-boot:run -Dspring-boot.run.jvmArguments='
-Dspring.datasource.url=jdbc:postgresql://localhost:5432/mydb 
-Dspring.datasource.username=admin 
-Dspring.datasource.password=admin'

使用上述命令,我正在设置(覆盖)application.properties 文件中的以下属性。

spring.datasource.url=jdbc:postgresql://localhost:5432/mydb
spring.datasource.username=admin
spring.datasource.password=admin

答案 2 :(得分:0)

mvn spring-boot:run -Dspring-boot.run.arguments =-spring.config.location = classpath:/application-local.properties