3

JAX-WS mavenプラグイン(org.jvnet.jax-ws-commons:jaxws-maven-pluginバージョン2.2)を使用して、プロジェクト内の一連のWSDLファイルからクラスを生成していますが、WSDLが実際に変更されることはありません。このコード生成をデフォルトで無効にし、私が作成した特定のMavenプロファイルに対してのみ有効にします。このプラグインの要素は要素をサポートしていますが、これをtrueに設定しても何も起こらないようです。私はここで何か間違ったことをしていますか?または、これは既知のバグですか?このコード生成を回避するために他にできることはありますか?

私のプラグイン構成は次のようになります。

 <plugin>
    <groupId>org.jvnet.jax-ws-commons</groupId>
    <artifactId>jaxws-maven-plugin</artifactId>
    <version>2.2</version>

    <executions>
      <execution>
        <id>import-wsdld</id>
        <phase>generate-sources</phase>
        <goals>
          <goal>wsimport</goal>
        </goals>
        <configuration>
          <wsdlFiles>
            <wsdlFile>MyWSDL.wsdl</wsdlFile>
          </wsdlFiles>
        </configuration>
      </execution>
    </executions>

    <configuration>
      <skip>true</skip>
      <packageName>com.my.package</packageName>
      <wsdlDirectory>src/main/resources/wsdl</wsdlDirectory>
      <keep>true</keep>
      <xnocompile>true</xnocompile>
      <sourceDestDir>src/main/java</sourceDestDir>
      <verbose>false</verbose>
    </configuration>

    <!-- Necessary to revert back to 2.1.7 -->
    <dependencies>
      <dependency>
        <groupId>com.sun.xml.ws</groupId>
        <artifactId>jaxws-tools</artifactId>
        <version>2.1.7</version>
        <exclusions>
          <exclusion>
            <groupId>org.jvnet.staxex</groupId>
            <artifactId>stax-ex</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.jvnet.staxex</groupId>
        <artifactId>stax-ex</artifactId>
        <version>1.2</version>
        <exclusions>
          <exclusion>
            <groupId>javax.xml.stream</groupId>
            <artifactId>stax-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
    </dependencies>
  </plugin>

どうもありがとう、

ジョセフ。

4

2 に答える 2

3

まあ、それをブロックで行うだけです(つまり、プラグイン宣言とそのすべてのものを意味します)<profile>。私はいくつかの魔法のプラグイン固有のソリューションに依存しません。Mavenが提供するものをそのまま使用して<profile>、自分の<plugin>もので作成するだけです。

于 2012-06-29T07:05:55.520 に答える
0

プラグインのドキュメントに基づくと、「スキップ」パラメータはありません。これはもちろん、サポートされないことを意味します。最善の解決策は、前述のようにそれをプロファイルに入れることです。

于 2012-06-29T09:54:07.570 に答える