我有一个在Netbeans中完美运行的Maven项目。如何在没有Netbeans的情况下从命令行执行应用程序?
有一个插件可以实现这个功能:http://www.mojohaus.org/exec-maven-plugin/
$ mvn exec:java -Dexec.mainClass="com.mycompany.App"
com.mycompany.App
是你的主类。使用Maven Exec插件及其建议的exec:java
目标是第一选择。建议的命令是正确的,你需要在命令行上指定-Dexec.mainClass=VALUE
。
mvn exec:java -Dexec.mainClass=com.acme.Hello
关于你的“classpath问题”,你没有描述得很清楚。你的问题是什么?你的依赖关系是什么?如果有必要,可以使用classpathScope
参数来定义传递给插件的类路径的范围。例如:
mvn exec:java -Dexec.classpathScope=compile -Dexec.mainClass=com.acme.Hello
作为上述插件的替代方案,有一个名为MOP的工具。什么是MOP?
MOP是什么?
MOP是一个小型实用程序,用于执行存储在Maven存储库中的类似jar或bundle的Java程序。
MOP会自动处理以下内容:
- 传递依赖项
- 从远程存储库下载并缓存本地的构件
- 设置您的类路径