如何在Eclipse中使用Maven exec插件?

时间:2015-06-11 19:34:21

标签: eclipse maven plugins exec

我是Maven的新手,我正在尝试使用exec:java运行项目。我的构建失败,大概是因为我没有exec插件。我下载了插件(http://mvnrepository.com/artifact/org.codehaus.mojo/exec-maven-plugin),但现在我不知道如何处理它以便能够在Eclipse中使用它。我尝试将其添加到构建路径,但这似乎不起作用。这可能是一个非常愚蠢的问题,但我如何让插件工作?

这是我的构建输出:

[INFO] Scanning for projects...
[INFO] 
[INFO] Using the builder org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder with a thread count of 1
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building Twitter2 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] 
[INFO] --- exec-maven-plugin:1.4.0:java (default-cli) @ Twitter2 ---
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3.826 s
[INFO] Finished at: 2015-06-11T14:24:29-06:00
[INFO] Final Memory: 10M/114M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.4.0:java (default-cli) on project Twitter2: The parameters 'mainClass' for goal org.codehaus.mojo:exec-maven-plugin:1.4.0:java are missing or invalid -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginParameterException

1 个答案:

答案 0 :(得分:8)

正如错误所示,似乎mainClass参数告诉插件运行的类没有正确设置。有关插件java目标的用法,请参阅http://www.mojohaus.org/exec-maven-plugin/java-mojo.html。尝试在POM配置中添加参数:

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>exec-maven-plugin</artifactId>
    <configuration>
         <mainClass>fully.qualified.class.name</mainClass>
    </configuration>
</plugin>

或通过命令行中的属性-Dexec.mainClass=fullClassName