java – Spring: overriding one from command line-ThrowExceptions

Exception or error:

I have an file with default variable values. I want to be able to change ONE of them upon running with mvn spring-boot:run. I found how to change the whole file, but I only want to change one or two of these properties.

How to solve:

You can pass in individual properties as command line arguments. For example, if you wanted to set server.port, you could do the following when launching an executable jar:

java -jar your-app.jar --server.port=8081

Alternatively, if you’re using mvn spring-boot:run:

mvn spring-boot:run -Drun.arguments="--server.port=8081"

You can also configure the arguments for spring-boot:run in your application’s pom.xml so they don’t have to be specified on the command line every time:



To update a little things, the Spring boot 1.X Maven plugin relies on the --Drun.arguments Maven user property but the Spring Boot 2.X Maven plugin relies on the Maven user property.

So for Spring 2, you need to do :

mvn spring-boot:run"--server.port=8081"

And if you need to pass multiple arguments, you have to use , as separator and never use whitespace between arguments :

mvn spring-boot:run"--server.port=8081,--foo=bar"

About the the maven plugin configuration and the way of passing the argument from a fat jar, it didn’t change.
So the very good Andy Wilkinson answer is still right.


In Spring Boot we have provision to override properties as below

mvn spring-boot:run

Leave a Reply

Your email address will not be published. Required fields are marked *