Spring:从命令行重写一个 application.property
2022-08-31 10:37:18
我有一个具有默认变量值的 application.properties 文件。我希望能够在与.我找到了如何更改整个文件的方法,但我只想更改其中的一两个属性。mvn spring-boot:run
我有一个具有默认变量值的 application.properties 文件。我希望能够在与.我找到了如何更改整个文件的方法,但我只想更改其中的一两个属性。mvn spring-boot:run
可以将各个属性作为命令行参数传入。例如,如果要设置 ,则可以在启动可执行 jar 时执行以下操作:server.port
java -jar your-app.jar --server.port=8081
或者,如果您与 Spring boot 2.x 一起使用:mvn spring-boot:run
mvn spring-boot:run -Dspring-boot.run.arguments="--server.port=8081"
或者,如果您使用的是 Spring Boot 1.x:
mvn spring-boot:run -Drun.arguments="--server.port=8081"
您还可以在应用程序中配置 参数,这样就不必每次都在命令行上指定它们:spring-boot:run
pom.xml
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<arguments>
<argument>--server.port=8085</argument>
</arguments>
</configuration>
</plugin>
为了更新一些东西,Spring boot 1.X Maven 插件依赖于 Maven 用户属性,但 Spring Boot 2.X Maven 插件依赖于 Maven 用户属性。--Drun.arguments
-Dspring-boot.run.arguments
所以对于春季2,你需要做:
mvn spring-boot:run -Dspring-boot.run.arguments="--server.port=8081"
如果您需要传递多个参数,则必须用作分隔符,并且永远不要在参数之间使用空格:,
mvn spring-boot:run -Dspring-boot.run.arguments="--server.port=8081,--foo=bar"
关于maven插件配置以及从胖罐中传递参数的方式,它没有改变。
所以安迪·威尔金森(Andy Wilkinson)的回答仍然是正确的。