4

これは単純なはずですが、理解できません。Maven を使用してビルドされ、JBOSS-EAP 5.1 サーバーにデプロイされる Web プロジェクトがあります。ビルド時に Maven が JBOSS EAP ライブラリにアクセスできるようにするには、pom.xml に何を追加すればよいですか?

使用できる特定の依存関係またはプラグインはありますか?

4

5 に答える 5

3

JBoss が EE コンテナーであることを考えると、JavaEE 依存関係を追加するだけで十分です。

<dependency>
    <groupId>javax</groupId>
    <artifactId>javaee-api</artifactId>
    <version>6.0</version>
    <scope>provided</scope>
</dependency>

提供されるスコープにより、アプリケーションがサーバーにデプロイされると、JBoss 独自のライブラリが使用されることが保証されます。

于 2013-03-01T16:10:07.093 に答える
1

まず、プロジェクトの依存関係を正確に特定し、それらを依存関係としてに追加する必要がありますpom.xml。ここで、jbossで使用可能なすべてのものを識別し、それらの依存関係のスコープを作成して、に<scope>provided</scope>バンドルされないようにしwarます。ビルド時に、MavenはMavenリポジトリからjarを取得する必要があります。

于 2012-09-13T11:08:28.963 に答える
1

私の知る限り、これは EAP 6 の機能であり、それでも実験段階です。ここここから詳細情報を参照してください。

以前のバージョンに対する素晴らしい機能強化は、EAP 6 がすべての EAP 関連の Maven アーティファクトを含む Maven リポジトリーと共に出荷されることです。Maven リポジトリーの欠落は、以前の EAP バージョンの大きな欠点でした。必要な Maven アーティファクトは、EAP ディストリビューションから独自のローカル Maven リポジトリ、または Nexus や Artifactory などのエンタープライズ Maven リポジトリに手動でデプロイする必要がありました。

いいえ、Jboss EAP 5.X 用のそのようなリポジトリーは存在しないと思います。

これは、実際には、最も推奨されるものから最も少ないものまで、次の選択肢があることを意味します。

  • Nexus や Artifactory などのイントラネット リポジトリを用意し、そこにアイテムをインストールします。次に、それらを pom から依存関係として参照できます。このオプションをお勧めします。
  • 各開発者のローカル Maven リポジトリにのみローカルにインストールします。これには mvn install-file を使用しますが、各開発者は自分でこれを行う必要があります。その後、各依存関係は、他の依存関係と同じように pom から参照できます。
  • ハードドライブのどこかに保存されているライブラリを直接指して、pom でシステムスコープを使用します。これは壊れやすいセットアップであり、簡単に壊れてしまいます。

ライブラリをイントラネット リポジトリに保存して使用するだけなら、それほど難しいことではありません。開発者向けのイントラネット リポジトリを持つことは、いずれにせよ使用すべきベスト プラクティスです。

于 2012-09-13T11:32:24.320 に答える
0

以下は、OPが質問に誤って含めた回答です)

私が最後にしたことは、次の依存関係を pom に追加することでした。

    <dependency>
        <groupId>javax.j2ee</groupId>
        <artifactId>j2ee</artifactId>
        <version>1.5</version>
        <scope>provided</scope>
    </dependency>

私が尋ねたことに対する直接的な回答ではありませんが (具体的には JBOSS について尋ねました)、コンパイルに必要なすべての Java EE API を提供してくれます。API を実装していないため、これを使用して何も実行できません。これは、私の Java EE アプリ サーバー (この場合は JBOSS) によって提供されます。

于 2013-12-04T15:50:13.167 に答える