第2章 Maven ガイド


2.1. Maven

2.1.1. Maven リポジトリー

Apache Maven は、ソフトウェアプロジェクトの作成、管理、構築を行う Java アプリケーションの開発で使用される分散型ビルド自動化ツールです。Maven は Project Object Model (POM) と呼ばれる標準の設定ファイルを利用して、プロジェクトの定義や構築プロセスの管理を行います。POM はモジュールやコンポーネントの依存関係、ビルドの順番、結果となるプロジェクトパッケージングのターゲットを記述し、XML ファイルを使用して出力します。こうすることで、プロジェクトが正しく統一された状態で構築されるようにします。
Maven は、リポジトリーを使いアーカイブを行います。Maven リポジトリーには Java ライブラリー、プラグイン、その他のアーティファクトが格納されています。デフォルトのパブリックリポジトリーは Maven 2 Central Repository ですが、複数の開発チームの間で共通のアーティファクトを共有する目的で、社内のプライベートおよび内部リポジトリーとすることが可能です。また、サードパーティのリポジトリーもあります。JBoss EAP 6 には、Java EE 開発者が JBoss EAP 6 でアプリケーションを構築する際に利用する要件の多くが含まれています。このようなリポジトリーを使うようプロジェクトを設定する場合は、 「JBoss EAP Maven リポジトリーの設定」を参照してください。
リポジトリーはリモートまたはローカルにすることができます。リモートリポジトリーへのアクセスは、HTTP サーバーのリポジトリーの場合は http://、ファイルサーバーのリポジトリーの場合は file:// など、一般的なプロトコルを使用します。ローカルリポジトリーは、リモートリポジトリーのアーティファクトをダウンロードし、キャッシュ化したものです。
Maven に関する詳細情報は、Welcome to Apache Maven を参照してください。
Maven リポジトリーの情報は、Apache Maven Project - Introduction to Repositories を参照してください。
Maven POM ファイルの詳細情報は、Apache Maven Project POM Reference および 「Maven POM ファイル」を参照してください。

2.1.2. Maven POM ファイル

プロジェクトオブジェクトモデル (POM) ファイルはプロジェクトをビルドするために Maven で使用する設定ファイルです。POM ファイルは XML のファイルであり、プロジェクトの情報やビルド方法を含みます。これには、ソース、テスト、およびターゲットのディレクトリーの場所、プロジェクトの依存関係、プラグインリポジトリー、実行できるゴールが含まれます。また、バージョン、説明、開発者、メーリングリスト、ライセンスなどのプロジェクトに関する追加情報も含まれます。pom.xml ファイルでは一部の設定オプションを設定する必要があり、他のすべてのオプションはデフォルト値に設定されます。詳細については、 「Maven POM ファイルの最低要件」を参照してください。
pom.xml ファイルのスキーマは http://maven.apache.org/maven-v4_0_0.xsd にあります。
POM ファイルの詳細は Apache Maven Project POM Reference を参照してください。

2.1.3. Maven POM ファイルの最低要件

最低要件

pom.xml ファイルの最低要件は次のとおりです。

  • プロジェクトルート
  • modelVersion
  • groupId - プロジェクトのグループの ID
  • artifactId - アーティファクト (プロジェクト) の ID
  • version - 指定グループ下のアーティファクトのバージョン
サンプル pom.xml ファイル

基本的な pom.xml ファイルは次のようになります。

<project>
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.jboss.app</groupId>
  <artifactId>my-app</artifactId>
  <version>1</version>
</project>
Copy to Clipboard Toggle word wrap

2.1.4. Maven 設定ファイル

Maven の settings.xml ファイルには Maven に関するユーザー固有の設定情報が含まれています。開発者の ID、プロキシ情報、ローカルリポジトリーの場所など、 pom.xml ファイルで配布されてはならないユーザー固有の設定が含まれています。
settings.xml が存在する場所は 2 つあります。
Maven インストール
設定ファイルは M2_HOME/conf/ ディレクトリーにあります。これらの設定は global 設定と呼ばれます。デフォルトの Maven 設定ファイルはコピー可能なテンプレートで、これを基にユーザー設定ファイルを設定することが可能です。
ユーザーのインストール
設定ファイルは USER_HOME/.m2/ ディレクトリーにあります。 Maven とユーザーの settings.xml ファイルが存在する場合、内容はマージされます。重複する内容がある場合、ユーザーの settings.xml ファイルが優先されます。
Maven settings.xml ファイルの例は以下のとおりです。
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" 
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">  
  <profiles>
    <!-- Configure the JBoss EAP Maven repository -->
    <profile>
      <id>jboss-eap-maven-repository</id>
      <repositories>
        <repository>
          <id>jboss-eap</id>
          <url>file:///path/to/repo/jboss-eap-6.0-maven-repository</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
        </repository>
      </repositories>
      <pluginRepositories>
        <pluginRepository>
          <id>jboss-eap-maven-plugin-repository</id>
          <url>file:///path/to/repo/jboss-eap-6.0-maven-repository</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
        </pluginRepository>
      </pluginRepositories>
    </profile>
  </profiles>
  <activeProfiles>
    <!-- Optionally, make the repository active by default -->
    <activeProfile>jboss-eap-maven-repository</activeProfile>
  </activeProfiles>
</settings>
Copy to Clipboard Toggle word wrap
settings.xml ファイルのスキーマは http://maven.apache.org/xsd/settings-1.0.0.xsd にあります。
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat