POM
Project Object Modelの略
プロジェクトのさまざまな情報を扱うためのオブジェクトモデル
pom.xmlでは、プロジェクトの設定をXMLのタグとして記述する
xmlってなに
eXtensible Markup Languageの略
データを構造化して記述するためのマークアップ言語
マークアップ言語 : データに意味を持たせるためにタグや要素を使って構造を定義する言語のこと
XMLはテキストベースの形式でデータを表現して、データの階層構造や関係性を明確にできる
XMLの特徴4つ
1,データを階層構造で表現できる
開始タグと終了タグで囲まれた要素が入れ子になり、複雑なデータ構造を表現できる
2,新しい要素や属性を定義して独自のデータ構造を作成できる
さまざまな目的に合わせたカスタムデータ形式を作成できる
3,プラットフォーム非依存
4,データの構造を保持するため、異なるアプリケーション間でデータを交換する際に有用
XMLの例
<person>
<name>John Doe</name>
<age>30</age>
<address>
<city>New York</city>
<country>USA</country>
</address>
</person>
personという要素があって、その中に名前、年齢、住所の情報が含まれている
要素間の階層構造やデータの意味がタグによって明示されている
pom.xml
- Apache Mavenというビルドツールやプロジェクト管理ツールで使用される設定ファイル
→プロジェクトの設定情報をXML形式で記述するためのファイル
MavenはJavaプロジェクトのビルド、依存関係の管理、テスト、デプロイなどを効率的に行うために使われる
pom.xmlの役割
プロジェクトの基本情報
プロジェクトの名前、バージョン、説明などの基本情報を含んでいる
→プロジェクトがどのようなものかを識別し、他の開発者やツールと共有できる
依存関係の管理
Mavenは外部ライブラリやフレームワークを簡単に統合できるようにするため、プロジェクトが依存するライブラリやモジュールの情報をpom.xmlに記述する
→必要なライブラリが自動的にダウンロードされて、プロジェクトに統合される
ビルド設定
プロジェクトのビルド設定、コンパイラのバージョン、ビルドの段階、テストの設定などを定義する
→プロジェクトのビルドやテストを簡単に行えるようになる
プラグインの設定
pom.xmlではビルドプラグインやテストプラグインなどの設定を行い、プロジェクトの特定のタスクを自動化できる
Mavenはプラグインを使用して様々なタスクを実行できる
リポジトリの設定
pom.xmlではカスタムリポジトリやミラーリポジトリなどを設定し、ライブラリのダウンロード元を指定する
Mavenは依存するライブラリを中央リポジトリなどからダウンロードする
pom.xmlはMavenを使用してプロジェクトを効率的に管理するための重要な設定ファイル
プロジェクトの依存関係、ビルド設定、プラグインの設定などを一元管理し、開発者がプロジェクトを容易にビルド、テスト、デプロイできるようにしている