【问题标题】:How to update maven pom dynamically如何动态更新maven pom
【发布时间】:2017-06-11 13:15:00
【问题描述】:

我正在使用 wsImport 从 wsdl 文件创建 java atrifacts。我有很多 wsdl 文件,到目前为止,我在 pom 中为 wsdl 文件创建了多个 wsimport 插件条目,这些文件变得混乱。

是否可以在运行时向 maven 动态添加插件? 我可以使用 maven embedder 和 maven-invoker 从 java 调用 maven 命令。 我也可以使用 MavenXpp3Reader 读取 pom,但完全不确定是否要即时更新 pom。

【问题讨论】:

    标签: maven wsimport maven-invoker-plugin


    【解决方案1】:

    尝试改用JAX-WS Maven Plugin

            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>jaxws-maven-plugin</artifactId>
                <version>2.4.1</version>
                <executions>
                    <execution>
                        <goals>
                            <goal>wsimport</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <target>2.1</target>
                    <!-- use 2.2 for Java SE 8 or Java EE 6+ runtime -->
                    <wsdlUrls>
                        <wsdlUrl>...</wsdlUrl>
                        <wsdlUrl>...</wsdlUrl>
                        <wsdlUrl>...</wsdlUrl>
                        ...
                    </wsdlUrls>
                </configuration>
            </plugin>
    

    有关更多配置选项,请参阅链接文档。

    请注意,这会在target/generated-sources/wsimport 中生成源文件,这些源文件会自动添加到要由maven-compiler-plugin 编译的源文件中。

    【讨论】:

    • 我想把不同wsdls的工件放在不同的包里。有什么方法可以在运行时动态地将 wsdls 添加到 pom 中?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-09-21
    • 1970-01-01
    • 2015-04-01
    • 2017-04-10
    • 2015-09-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多