Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用不同的参数运行两个Maven Mojo_Maven_Mojo - Fatal编程技术网

如何使用不同的参数运行两个Maven Mojo

如何使用不同的参数运行两个Maven Mojo,maven,mojo,Maven,Mojo,我用两个mojo编写了一个Maven插件。它们应该在命令行中运行,而不是附加到构建的任何阶段 它们碰巧有不同的参数,我不知道如何指定它们。到目前为止,我已经成功地使用了两次执行,每次执行一次,但在命令行中看起来很笨拙 这是my pom.xml中的插件声明: <plugin> <groupId>myplugin.tools.camera</groupId> <artifactId>camera-maven-plugin</artifac

我用两个mojo编写了一个Maven插件。它们应该在命令行中运行,而不是附加到构建的任何阶段

它们碰巧有不同的参数,我不知道如何指定它们。到目前为止,我已经成功地使用了两次执行,每次执行一次,但在命令行中看起来很笨拙

这是my pom.xml中的插件声明:

<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