5

wsimportプロジェクトのビルド中に目標として使用する Web サービスを使用している Maven プロジェクトがあります。

<build>
  <plugins>
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>jaxws-maven-plugin</artifactId>
            <version>1.10</version>
            <executions>
                <execution>
                    <goals>
                        <goal>wsimport</goal>
                    </goals>
                </execution>
            </executions>
            <!-- -->
            <configuration>
                <wsdlUrls>
                    <wsdlUrl>http://localhost:8081/email-service/services/EmailService?wsdl</wsdlUrl>
                </wsdlUrls>
                <sourceDestDir>${project.build.directory}/generated</sourceDestDir>
                <verbose>true</verbose>
            </configuration>
        </plugin>
        <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>2.3.2</version>
            <configuration>
                <source>1.6</source>
                <target>1.6</target>
            </configuration>
        </plugin>
    </plugins>
<finalName>EmailServiceClient</finalName>

コマンドを使用してプロジェクトをビルドしclean installます。アーティファクト/クラスはtarget->generatedディレクトリに生成されます。ここまでは順調ですね。

ディレクトリ内の生成されたクラスにアクセスしようとするsrcと、クラスが定義されていないというコンパイラ エラーが発生します。私の仲間は私にプロジェクトを構築するように言いました

eclipse:clean eclipse:eclipse

私はそうしました、そしてそれは問題を解決しました。これらの生成されたクラスは非常に簡単に使用できました。今、私は疑問に思っています

  • このコマンドで実際に何が起こっているのですか?
  • 用途は何ですか?
  • 私は実際に正しい消費方法に従っていますか?私も使えることは知っていますwsdl2javaが、これの何が問題になっていますか?

誰もこの種の状況に遭遇したことがありますか? これに光を当ててください。ありがとうございました!

4

1 に答える 1

4

「src ディレクトリで生成されたクラスにアクセスしようとすると、クラスが定義されていないというコンパイラ エラーが発生します。」という問題の背後にある理由はわかりませんが、使用しているコマンドの意味はわかります。

私がmavenで知っている限り、実行するために一度に複数の目標を定義できるので、

eclipse:clean   \\Deletes the .project, .classpath, .wtpmodules files and .settings  folder used by Eclipse.

eclipse:eclipse \\build the project into eclipse project like structure.
于 2014-01-27T21:47:13.500 に答える