如何通过CLI将参数传递给Maven插件?

阿米尔汗
<build>
    <plugins>
        <plugin>
            <groupId>org.jvnet.jax-ws-commons</groupId>
            <artifactId>jaxws-maven-plugin</artifactId>
            <version>2.3</version>

            <executions>
                <execution>
                    <phase>generate-sources</phase>
                    <goals>
                        <goal>wsimport</goal>
                    </goals>
                    <id>generate-sei</id>

                    <configuration>
                        <sourceDestDir>${project.basedir}/src/main/java</sourceDestDir>
                    </configuration>
                </execution>
            </executions>
          <dependencies>...</dependencies>
        </plugin>
    </plugins>
</build>

上面的XML代码段来自Java项目中的POM文件。在此代码段中,我定义了jaxws-maven-plugin以使用wsdl文件生成SEI代码并将其放置在src / main / java目录中。此插件绑定到generate-sources阶段,并且工作正常。

我想这样做,以便如果我直接发布插件,请使用:

mvn jaxws:wsimport

它应将文件放在上述文件夹中。从插件参考站点(https://jax-ws-commons.java.net/jaxws-maven-plugin/wsimport-mojo.html),我不知道如何将参数(sourceDestDir)作为命令传递行参数。有办法我可以做到吗?

图那基

警告 /!\

您正在尝试在源文件夹下生成源src/main/java除非有非常充分的理由,否则不要这样做所有生成的内容都应始终放置在build目录下(target默认情况下),并且不受版本控制。build-helper-maven-plugin:add-source如果插件本身还没有做的话,您总是可以使用来将生成的源添加为源文件夹


为了能够直接在命令行上设置参数,插件需要定义一个用户属性。但是,org.jvnet.jax-ws-commons:jaxws-maven-plugin并未为sourceDestDir参数定义用户属性这很明显,因为文档没有设置“用户属性”。

您也可以在源代码中找到它

@Parameter(defaultValue = "${project.build.directory}/generated-sources/wsimport")
private File sourceDestDir;

@Parameter用于声明Maven插件参数注释没有对应的property

因此,您将需要具备以下条件:

  1. 定义一个Maven属性jaxws.sourceDestDir与值${project.basedir}/src/main/java

    <properties>
      <jaxws.sourceDestDir>${project.basedir}/src/main/java</jaxws.sourceDestDir>
    </properties>
    

    最好是使用${project.build.directory}/some/path而不是src/main/java

  2. 配置插件以使用此Maven属性:

    <configuration>
      <sourceDestDir>${jaxws.sourceDestDir}</sourceDestDir>
    </configuration>
    
  3. 如果您想覆盖它,现在可以使用在命令行上直接覆盖它-Djaxws.sourceDestDir=/my/new/value该系统属性将优先于Maven属性的值。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何通过CLI将参数传递给Maven插件?

来自分类Dev

如何通过nx受影响的:test将参数传递给ng-cli?

来自分类Dev

Clang:如何将多个参数传递给 clang 插件

来自分类Dev

jQuery将参数传递给插件

来自分类Dev

jQuery将参数传递给插件

来自分类Dev

如何通过指定的URL将URL参数传递给redirect()

来自分类Dev

如何通过服务容器将参数传递给构造函数?

来自分类Dev

如何通过选择表单将参数传递给URL?

来自分类常见问题

如何通过docker run将参数传递给Shell脚本

来自分类Dev

如何通过活动将参数传递给片段

来自分类Dev

如何通过语义ui将参数传递给Dropdown组件?

来自分类Dev

如何通过cpp程序将参数传递给bash脚本

来自分类Dev

如何通过Dockerfile将参数传递给bash脚本

来自分类Dev

如何通过变量扩展将参数传递给ENTRYPOINT?

来自分类Dev

如何通过指定的URL将URL参数传递给redirect()

来自分类Dev

如何通过cfschedule将参数传递给计划任务?

来自分类Dev

如何通过服务容器将参数传递给构造函数?

来自分类Dev

如何通过tar将参数传递给lzip?

来自分类Dev

Maven exec插件将参数传递给外部可执行文件

来自分类Dev

将多个参数传递给 Maven

来自分类Dev

通过Mocha将参数传递给程序

来自分类Dev

通过FormSet将参数传递给ModelForm

来自分类Dev

通过外壳将参数传递给python

来自分类Dev

通过反射将参数传递给函数

来自分类Dev

如何将内部版本号传递给maven-cucumber-reporting插件

来自分类Dev

如何将内部版本号传递给maven-cucumber-reporting插件

来自分类Dev

将参数传递给jQuery插件时,如何为JavaScript对象指定变量属性

来自分类Dev

如何使用参数化构建插件将默认值传递给Jenkins构建?

来自分类Dev

如何在Babel 6中将参数传递给预设中的插件?

Related 相关文章

  1. 1

    如何通过CLI将参数传递给Maven插件?

  2. 2

    如何通过nx受影响的:test将参数传递给ng-cli?

  3. 3

    Clang:如何将多个参数传递给 clang 插件

  4. 4

    jQuery将参数传递给插件

  5. 5

    jQuery将参数传递给插件

  6. 6

    如何通过指定的URL将URL参数传递给redirect()

  7. 7

    如何通过服务容器将参数传递给构造函数?

  8. 8

    如何通过选择表单将参数传递给URL?

  9. 9

    如何通过docker run将参数传递给Shell脚本

  10. 10

    如何通过活动将参数传递给片段

  11. 11

    如何通过语义ui将参数传递给Dropdown组件?

  12. 12

    如何通过cpp程序将参数传递给bash脚本

  13. 13

    如何通过Dockerfile将参数传递给bash脚本

  14. 14

    如何通过变量扩展将参数传递给ENTRYPOINT?

  15. 15

    如何通过指定的URL将URL参数传递给redirect()

  16. 16

    如何通过cfschedule将参数传递给计划任务?

  17. 17

    如何通过服务容器将参数传递给构造函数?

  18. 18

    如何通过tar将参数传递给lzip?

  19. 19

    Maven exec插件将参数传递给外部可执行文件

  20. 20

    将多个参数传递给 Maven

  21. 21

    通过Mocha将参数传递给程序

  22. 22

    通过FormSet将参数传递给ModelForm

  23. 23

    通过外壳将参数传递给python

  24. 24

    通过反射将参数传递给函数

  25. 25

    如何将内部版本号传递给maven-cucumber-reporting插件

  26. 26

    如何将内部版本号传递给maven-cucumber-reporting插件

  27. 27

    将参数传递给jQuery插件时,如何为JavaScript对象指定变量属性

  28. 28

    如何使用参数化构建插件将默认值传递给Jenkins构建?

  29. 29

    如何在Babel 6中将参数传递给预设中的插件?

热门标签

归档