如何使用不同的参数运行两个Maven Mojo
我用两个mojo编写了一个Maven插件。它们应该在命令行中运行,而不是附加到构建的任何阶段 它们碰巧有不同的参数,我不知道如何指定它们。到目前为止,我已经成功地使用了两次执行,每次执行一次,但在命令行中看起来很笨拙 这是my pom.xml中的插件声明:如何使用不同的参数运行两个Maven Mojo,maven,mojo,Maven,Mojo,我用两个mojo编写了一个Maven插件。它们应该在命令行中运行,而不是附加到构建的任何阶段 它们碰巧有不同的参数,我不知道如何指定它们。到目前为止,我已经成功地使用了两次执行,每次执行一次,但在命令行中看起来很笨拙 这是my pom.xml中的插件声明: <plugin> <groupId>myplugin.tools.camera</groupId> <artifactId>camera-maven-plugin</artifac
<plugin>
<groupId>myplugin.tools.camera</groupId>
<artifactId>camera-maven-plugin</artifactId>
<version>1.0.0</version>
<executions>
<execution>
<id>exe1</id>
<configuration>
<snapshotfile>file1.shot</snapshotfile>
<dir>dev</dir>
</configuration>
<goals>
<goal>take-shot</goal>
</goals>
</execution>
<execution>
<id>exe2</id>
<configuration>
<time>12:34.56</time>
<dir>test</dir> <!-- same parameter, with different value -->
</configuration>
<goals>
<goal>show-shot</goal>
</goals>
</execution>
</executions>
</plugin>
有没有可能去掉那些@exe1
和@exe2
现在,如果我想创建多个不同的参数,以便以后选择使用哪个参数,那么这些执行可能会有好处。我希望可以有一个默认的执行,但不知道怎么做。你可以简单地定义默认配置,如果你通过
default cli
执行mvn camera:take shot
的话,就可以使用它。…@khmarbaise Works!但是,我无法同时为这两种情况设置默认cli
。我想将这两个执行标记为默认值,每个目标对应一个执行。您还可以删除执行并将所有参数(两个目标对应)放入插件的
,因为这些参数的名称并不重叠。@JFMeier不幸的是,有些参数重叠,并且具有不同的值。唉,我只是试着添加了两次相同的插件,每个插件都带有defaultcli
和一个目标。虽然它确实可以工作,但Maven抱怨pom.xml格式不正确,将来也无法工作。。。
$ mvn camera:take-shot@exe1
$ mvn camera:show-shot@exe2