これは単純なはずですが、理解できません。Maven を使用してビルドされ、JBOSS-EAP 5.1 サーバーにデプロイされる Web プロジェクトがあります。ビルド時に Maven が JBOSS EAP ライブラリにアクセスできるようにするには、pom.xml に何を追加すればよいですか?
使用できる特定の依存関係またはプラグインはありますか?
これは単純なはずですが、理解できません。Maven を使用してビルドされ、JBOSS-EAP 5.1 サーバーにデプロイされる Web プロジェクトがあります。ビルド時に Maven が JBOSS EAP ライブラリにアクセスできるようにするには、pom.xml に何を追加すればよいですか?
使用できる特定の依存関係またはプラグインはありますか?
JBoss が EE コンテナーであることを考えると、JavaEE 依存関係を追加するだけで十分です。
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>6.0</version>
<scope>provided</scope>
</dependency>
提供されるスコープにより、アプリケーションがサーバーにデプロイされると、JBoss 独自のライブラリが使用されることが保証されます。
まず、プロジェクトの依存関係を正確に特定し、それらを依存関係としてに追加する必要がありますpom.xml
。ここで、jbossで使用可能なすべてのものを識別し、それらの依存関係のスコープを作成して、に<scope>provided</scope>
バンドルされないようにしwar
ます。ビルド時に、MavenはMavenリポジトリからjarを取得する必要があります。
私の知る限り、これは EAP 6 の機能であり、それでも実験段階です。こことここから詳細情報を参照してください。
以前のバージョンに対する素晴らしい機能強化は、EAP 6 がすべての EAP 関連の Maven アーティファクトを含む Maven リポジトリーと共に出荷されることです。Maven リポジトリーの欠落は、以前の EAP バージョンの大きな欠点でした。必要な Maven アーティファクトは、EAP ディストリビューションから独自のローカル Maven リポジトリ、または Nexus や Artifactory などのエンタープライズ Maven リポジトリに手動でデプロイする必要がありました。
いいえ、Jboss EAP 5.X 用のそのようなリポジトリーは存在しないと思います。
これは、実際には、最も推奨されるものから最も少ないものまで、次の選択肢があることを意味します。
ライブラリをイントラネット リポジトリに保存して使用するだけなら、それほど難しいことではありません。開発者向けのイントラネット リポジトリを持つことは、いずれにせよ使用すべきベスト プラクティスです。
(以下は、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) によって提供されます。