Я просто столкнулся с подобной проблемой, и я хотел написать полный ответ для других, которые могут столкнуться с этим вопросом.
Даже если вопрос не о pom.xml, а о командной строке - в нем не указано, как сделать то же самое с pom.xml, поэтому здесь он
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2.1</version>
<goals>
<goal>java</goal>
</goals>
<configuration>
<mainClass>myPackage.MyMain</mainClass>
<systemProperties>
<property>
<key>myKey</key>
<value>myValue</value>
</property>
</systemProperties>
</configuration>
</plugin>
</plugins>
</build>
Для командной строки - я думаю, Sean Patrick Floyd's
ответ хорош - однако, если у вас уже есть что-то определенное в вашем pom.xml, оно переопределит его.
Так работает
mvn exec:java -DmyKey=myValue
также должно работать на вас.
Вы также должны отметить, что документация exec плагина гласит следующее
A list of system properties to be passed.
Note: as the execution is not forked, some system properties required
by the JVM cannot be passed here.
Use MAVEN_OPTS or the exec:exec instead. See the user guide for more information.
Так что вы также можете сделать что-то вроде этого
export MAVEN_OPTS=-DmyKey=myValue
mvn exec:java
и он должен работать так же.