There are many situations when you want Maven to run a specific executable on your computer. A simple use case would be to run the JAR that you created. Another case would be to have Maven run commands that are not provided as plugins (for instance, create a native Windows installer).
Maven provides support to run any executable system in a separate process along with Java programs in the same virtual machine on which Maven runs. The Maven Exec plugin provides this support using the
exec goal (to run in a separate process) and the
java goal (to run Java programs in the same process).
mvn clean package exec:java –Dexec.mainClass="com.packt.cookbook.App" ...