0

私はejb3に取り組んでおり、arqullianでテストしています。pom.xml に次の依存関係があります

  <dependency>
        <groupId>org.glassfish.main.ejb</groupId>
        <artifactId>javax.ejb</artifactId>
    </dependency>

    <dependency>
        <groupId>javax</groupId>
        <artifactId>javaee-api</artifactId>
    </dependency>


    <dependency>
        <groupId>org.jboss.arquillian.junit</groupId>
        <artifactId>arquillian-junit-container</artifactId>
        <scope>test</scope>
    </dependency>

    <dependency>
        <groupId>org.jboss.arquillian.container</groupId>
        <artifactId>arquillian-glassfish-embedded-3.1</artifactId>
        <scope>test</scope>
    </dependency>

    <dependency>
        <groupId>org.glassfish.main.extras</groupId>
        <artifactId>glassfish-embedded-all</artifactId>
        <version>3.1.2</version>
        <scope>test</scope>
    </dependency>

テスト ケースの実行中に最初の 2 つの依存関係を除外する必要がありますが、テスト時以外は使用できます。

どうすればこれを達成できますか?

どんな助けでも大歓迎です。

4

2 に答える 2

0

javaee-api依存関係から EJB API を取得できるので、依存関係を単独で使用できると思います。providedただし、テストのコンパイル以外には使用できず、実行時にコンテナー (この場合は埋め込まれた GlassFish) によって提供されるため、スコープ付きの依存関係として指定する必要があります。

javaee-api で問題が発生した場合は、JBoss Java EE 6 APIjavaee-apiの使用を試すことができます。これらの API には通常、依存関係の問題の原因となる削除されたメソッド本体が含まれていないためです。

于 2013-02-23T15:01:29.873 に答える