2.3.4. プロジェクト POM を使用した JBoss EAP 6 Maven リポジトリーの設定
プロジェクトで JBoss EAP 6 Maven リポジトリーを使用するよう Maven に指示する方法は 2 つあります。
このタスクでは、プロジェクト
- Maven の設定を変更できます。
- プロジェクトの POM ファイルを設定できます。
pom.xml
にリポジトリー情報を追加して、JBoss EAP 6 Maven リポジトリーを使用するように特定のプロジェクトを設定する方法を示します。この設定方法は、グローバル設定とユーザー設定の設定に優先し、オーバーライドします。
この設定方法は、通常はお勧めしません。プロジェクトの POM ファイルでリポジトリーを設定する場合は、慎重に計画し、ビルドが遅くなる可能性があり、予期されたリポジトリーからではないアーティファクトが発生する可能性があることに注意してください。
注記
リポジトリーマネージャーが通常使用されるエンタープライズ環境では、Maven は、このマネージャーを使用してすべてのプロジェクトに対してすべてのアーティファクトを問い合わせる必要があります。Maven は、宣言されたすべてのリポジトリーを使用して不足しているアーティファクトを見つけるため、探しているものが見つからない場合に、central リポジトリー (組み込みの親 POM で定義されます) で検索を試行します。この central の場所をオーバーライドするには、
central
で定義を追加してデフォルトの central リポジトリーがリポジトリーマネージャーになるようにします。これは、確立されたプロジェクトには適切ですが、クリーンなプロジェクトや「新しい」プロジェクトの場合は、cyclic 依存関係が作成されるため、問題が発生します。
推移的に含まれる POM も、このタイプの設定の問題です。Maven は、これらの外部リポジトリーに欠落しているアーティファクトを照会する必要があります。これにより、ビルドの速度が低下するだけでなく、アーティファクトの発生元を制御できなくなり、ビルドが破損する可能性があります。
注記
リポジトリーの URL はリポジトリーの場所 (ファイルシステムまたは Web サーバー) によって異なります。リポジトリーのインストール方法については、以下を参照してください。「JBoss EAP 6 Maven リポジトリーをインストールします」。各インストールオプションの例は次のとおりです。
- ファイルシステム
- file:///path/to/repo/jboss-eap-6.x-maven-repository
- Apache Web Server
- http://intranet.acme.com/jboss-eap-6.x-maven-repository/
- Nexus リポジトリーマネージャー
- https://intranet.acme.com/nexus/content/repositories/jboss-eap-6.x-maven-repository
- テキストエディターでプロジェクトの
pom.xml
ファイルを開きます。 - 次のリポジトリー設定を追加します。ファイル内にすでに
<repositories>
の設定がある場合は、それに<repository>
の要素を追加します。必ず<url>
を実際のリポジトリーの場所に変更するようにしてください。<repositories> <repository> <id>jboss-eap-repository-group</id> <name>JBoss EAP Maven Repository</name> <url>file:///path/to/repo/jboss-eap-6.x.0-maven-repository/</url> <layout>default</layout> <releases> <enabled>true</enabled> <updatePolicy>never</updatePolicy> </releases> <snapshots> <enabled>true</enabled> <updatePolicy>never</updatePolicy> </snapshots> </repository> </repositories>
- 次のプラグインリポジトリー設定を追加します。ファイル内にすでに
<pluginRepositories>
の設定がある場合は、それに<pluginRepository>
の要素を追加します。<pluginRepositories> <pluginRepository> <id>jboss-eap-repository-group</id> <name>JBoss EAP Maven Repository</name> <url>file:///path/to/repo/jboss-eap-6.x.0-maven-repository/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </pluginRepository> </pluginRepositories>