I have the following problem. I would like to run
mvn from command line for a
Main.java accepts a parameter. How do I do that from command line?
I tried finding an example but I was not successful. Could someone help me by giving me an example of that?
I looked here but didn't quite understand what I should do.
Also, how do I execute that command from a different folder than the Main.java folder?
for example the
Main.java is located in
What should I put in
mvn exec:java -Dexec.mainClass="what to put here?" -Dexec.args="arg0 arg1 arg2"
You could run:
mvn exec:exec -Dexec.args="arg1".
This will pass the argument arg1 to your program.
You should specify the main class fully qualified, for example, a Main.java that is in a package test would need
mvn exec:java -Dexec.mainClass=test.Main
By using the
-f parameter, as decribed here, you can also run it from other directories.
mvn exec:java -Dexec.mainClass=test.Main -f folder/pom.xm
For multiple arguments, simply separate them with a space as you would at the command line.
mvn exec:java -Dexec.mainClass=test.Main -Dexec.args="arg1 arg2 arg3"
For arguments separated with a space, you can group using
'argument separated with space' inside the quotation marks.
mvn exec:java -Dexec.mainClass=test.Main -Dexec.args="'argument separated with space' 'another one'"