I've got a Maven project that runs perfectly inside Netbeans. How can I execute the application from the command-line (without Netbeans)?
There's a plugin for that: http://www.mojohaus.org/exec-maven-plugin/
$ mvn exec:java -Dexec.mainClass="com.mycompany.App"
Assuming com.mycompany.App
is you main class.
Using the Maven Exec Plugin and its exec:java
goal as suggested is a first option. And the command suggested is correct, you have to specify -Dexec.mainClass=VALUE
on the command line.
mvn exec:java -Dexec.mainClass=com.acme.Hello
Regarding your "classpath problem", well, you didn't describe it very clearly. What is your problem? What are your dependencies exactly? Just in case, there is a classpathScope
parameter allowing to define the scope of the classpath passed to the plugin. E.g.:
mvn exec:java -Dexec.classpathScope=compile -Dexec.mainClass=com.acme.Hello
As an alternative to the above plugin, there is MOP. What is MOP?
What is MOP?
MOP is a small utility for executing Java programs which are stored as artifacts like jars or bundles in a Maven repository.
MOP automatically deals with the following for you
- transitive dependencies
- downloading artifacts from remote repositories and caching them locally
- setting up your classpath
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With