1

インターフェイスを公開する EJB クライアントを生成する Maven EJB プロジェクトを構築したいと考えています。

これを私のPOMで使用するとうまくいきます:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-ejb-plugin</artifactId>
    <version>2.3</version>
    <configuration>
        <ejbVersion>3.1</ejbVersion>
        <generateClient>true</generateClient>
    </configuration>
</plugin>

2 つの JAR が組み込まれてtargetいますが、Eclipse では、実装とインターフェイスの両方に対して 1 つのプロジェクトしかありません。

Eclipse で 2 つの個別のプロジェクトを作成したいと思います。1 つはインターフェイス用、もう 1 つは実装用です (Maven を使用せずに EJB プロジェクトを作成するときの Eclipse の従来の方法)。どうすればこれを行うことができますか?

4

1 に答える 1

1

さて、私はmaven-archetype-quickstartアーキタイプに基づいて Eclipse 2 Maven プロジェクトで M2E を使用してビルドすることに成功しました。1つは ejb 実装 (ejb-impl) 用、もう 1 つは ejb クライアント (ejb-client) 用です。

ejb-impl ではパッケージングを選択ejbし、ejb-client ではjarパッケージングを選択します。

maven-ejb-plugin プラグインを使用して ejb-impl から ejb を生成しますが、generateClient オプションは使用しません (デフォルト値は既に false に設定されています)。

maven-ear-plugin を使用して、ejb-impl、ejb-client、および一部の war モジュール (jsf) から ear を生成します。jarModule を使用して ejb-client をインクルードし、libディレクトリの下にある ear ファイルにパッケージ化するので、マニフェストなどを変更する必要はありません。ejb-client は他のモジュールから簡単にアクセスできます。

そのため、Maven を使用すると、実装ではなく EJB のインターフェース メソッドのみを使用または配布できるようになり、冗長なコードはありません。

于 2012-10-26T12:33:25.760 に答える