1
我试图使Maven的Exec插件运行多个执行当调用下面的方式exec:java
目标多次执行:但是在使用Maven 3.1.1我运行mvn exec:java
的Maven Exec插件不工作
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2.1</version>
<executions>
<execution>
<id>first</id>
<goals>
<goal>java</goal>
</goals>
<configuration>
<mainClass>com.example.First</mainClass>
</configuration>
</execution>
<execution>
<id>second</id>
<goals>
<goal>java</goal>
</goals>
<configuration>
<mainClass>com.example.Second</mainClass>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
收到错误消息:
[ERROR] Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.2.1:java (default-cli) on project test: The parameters 'mainClass' for goal org.codehaus.mojo:exec-maven-plugin:1.2.1:java are missing or invalid -> [Help 1]
运行exec:java
目标为单次执行(不使用嵌套executions
元素)按预期工作。
如果我用“exec:java”明确地执行插件,哪一个阶段应该是? – sakra
那么,如果你指定的'mainClass'是模块源代码的一部分,那么你需要首先编译代码,所以最低限度是编译,尽管我会推荐'package'运行测试。有关可能阶段的详细列表,请查看:http://maven.apache.org/ref/3.1.1/maven-core/lifecycles.html,以及http://maven.apache.org/guides/introduction/介绍到的,lifecycle.html。也许问题是,当你想运行exec目标时,这些类还没有被编译......? – carlspring
另外我注意到,maven-exec-plugin不支持'java'目标的多个扩展。更多信息在这里:http://stackoverflow.com/questions/22562558/the-maven-exec-plugin-executes-only-first-execution – victor