为什么 jaxws-maven-plugin 忽略我的 .WSDL 文件?

问题描述

我正在使用 MojoHaus 的 jaxws-maven-plugin 从我的存储库中的 .WSDL 文件生成 Java 类,遵循示例 here

pom.xml:

      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>jaxws-maven-plugin</artifactId>
        <version>2.6</version>
        <executions>
          <execution>
            <goals>
              <goal>wsimport</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
            <wsdlDirectory>resources</wsdlDirectory>
            <wsdlFiles>
                <wsdlFile>my.wsdl</wsdlFile> 
            </wsdlFiles>
            <keep>true</keep>
            <packageName>my.package.name</packageName>
            <sourceDestDir>src</sourceDestDir>
            <extension>true</extension>
        </configuration>
      </plugin>

但是,当我构建项目时,我看到:

[INFO] --- jaxws-maven-plugin:2.6:wsimport (default) @ MY_PROJECT ---
[INFO] Ignoring: file/path/here/resources/my.wsdl

wsimport 为什么会忽略我故意指定的文件?请注意,如果我使用 标记以“错误”的方式执行此操作,则会成功生成文件(尽管注释具有引用我的机器的绝对文件路径,这就是我更改它的原因)。

解决方法

解决方案是编辑并保存 .WSDL 文件。如果 .WSDL 文件自上次更改后没有更改,则 wsimport 将不会生成这些类。