ホーム
SQT
小単元とクイズで楽しくトレーニング

メインナビゲーション

  • ホーム
  • 受講チケット
  • 利用ガイド
    • 受講チケット
    • 講座と教材の利用
    • 教材検索
    • 企業団体向け機能
    • セキュリティについて
    • パートナー様向け機能
  • 記事一覧

Maven とプロジェクトの構成

パンくず

  • ホーム
  • Spring Boot 入門講座(試用版)
  • Maven とプロジェクトの構成
音声スライド (クリックで展開/閉じる)
スライドクリック& F キーで全画面、Esc で復帰、その他のショートカット

はじめに

  • ビルドツールが必要な理由を知る
  • Maven の標準的な構成を理解する
  • pom.xml の依存関係を読み取る

この単元では、Java の開発作業を支えるビルドツールと Maven を学びます。TODO アプリの構成を題材に、src/main/java、src/main/resources、src/test/java の役割を確認します。さらに、pom.xml に書かれた dependency が何を表すのかを読み取れるようになることが目標です。

ビルドツールの役割

Java のアプリを準備するには、ソースコードのコンパイルだけでなく、外部の部品の取得、テスト、配布しやすい形へのパッケージ化などが必要です。これらを毎回手作業で行うと、作業漏れや手順の違いが起こりやすくなります。ビルドツールは、一連の作業を決められた手順で自動化する道具です。

Maven が担うこと

  • Maven は Java 向けのビルドツール
  • プロジェクトの構成を規約で統一する
  • 必要な外部部品を自動で取得する
  • ビルドの設定を pom.xml に記述する

Maven は、Java の開発で広く使われるビルドツールです。ファイルを置く場所やビルドの進め方に標準的な規約を設けています。また、必要な外部のプログラム部品を自動で取得します。プロジェクトごとの情報や必要な部品は、pom.xml にまとめて記述します。

標準ディレクトリの全体像

Maven では、標準のディレクトリ構成が決まっています。アプリに含める Java コードとリソースは src/main の下に置き、動作確認に使うコードとリソースは src/test の下に置きます。この規約に従うことで、ファイルごとの場所を細かく設定しなくても Maven が役割を判別できます。

各ディレクトリの役割

場所 置くもの
src/main/java アプリの Java コード
src/main/resources HTML、CSS、設定ファイル
src/test/java 動作確認用の Java コード
src/test/resources 動作確認用の設定ファイル

src/main/java には、TodoApplication.java などの Java コードを置きます。src/main/resources には、HTML、CSS、application.properties など、Java コード以外のファイルを置きます。src/test/java と src/test/resources は、アプリの動作を確認するためのファイルを分けて置く場所です。

pom.xml は設計図

記述する情報 意味
groupId 作成者や組織を識別する名前
artifactId 作成するものを識別する名前
version 作成するものの版
dependency 必要な外部部品
build ビルドに関する設定

pom.xml は、Maven がプロジェクトを扱うための設計図です。TODO アプリでは、groupId が com.example、artifactId が todo、version が 0.0.1-SNAPSHOT です。この 3 つの情報を組み合わせることで、作成するものを識別できます。ほかに、必要な外部部品を表す dependency や、ビルドに関する設定も記述します。

dependency の読み方

  • dependency は必要な外部部品の宣言
  • groupId で提供元を識別する
  • artifactId で部品を識別する
  • Maven が必要なファイルを取得する

pom.xml の dependency は、このプロジェクトが必要とする外部部品の宣言です。たとえば、TODO アプリには groupId が com.h2database、artifactId が h2 の dependency があります。Maven はこの情報を読み、Maven リポジトリと呼ばれる保管場所から必要なファイルを取得します。ここでのリポジトリは、公開された部品を保管する場所という意味です。

依存関係を取得する流れ

Maven は最初に pom.xml を読み、宣言された dependency を確認します。次に、groupId や artifactId を手掛かりとして Maven リポジトリを探し、必要なファイルを取得します。開発者が必要なファイルを一つずつ探してプロジェクトへ追加する必要はありません。具体的な Maven の操作は第 7 単元で扱います。

この単元で扱わないこと

  • Maven のコマンド操作は第 7 単元
  • 実行用ファイルの作成と起動も第 7 単元
  • Spring Boot のスターターは第 9 単元
  • 親 POM の役割も第 9 単元

この単元では、Maven の役割、標準ディレクトリ、pom.xml の読み方に集中しました。Maven を実際に操作する方法と、作成したファイルからアプリを起動する方法は第 7 単元で扱います。pom.xml にある Spring Boot 固有のスターターと親 POM の役割は、第 9 単元で扱います。

まとめ

  • ビルドツールは開発作業を自動化する
  • Maven は標準の構成を規約で定める
  • src/main はアプリ用
  • src/test は動作確認用
  • pom.xml で依存関係を宣言する

ビルドツールは、外部部品の取得、コンパイル、テスト、パッケージ化などを自動化します。Maven では標準のディレクトリ構成に従ってファイルを配置します。アプリ用のファイルは src/main、動作確認用のファイルは src/test に分けます。必要な外部部品は pom.xml の dependency として宣言し、Maven に取得を任せます。

確認テスト

学んだ知識をクイズ問題でチェック!

すべての単元を見るには…

Spring Boot 入門講座

Spring Boot 入門講座

HTML、CSS、Java 言語、SQL の基礎学習を終えたソフトウェア開発初心者向けの Spring Boot 入門講座です。TODO 管理アプリを題材に、使用されている技術の解説を通じて Spring Boot の基礎を学びます。

受講チケットのお求めはこちら
  • 前の単元
  • 次の単元

6 / 7 単元

講座情報

Spring Boot 入門講座(試用版)

「Spring Boot 入門講座」のお試し用サンプル教材です。確認テストの試用にはログインが必要です。ユーザー登録は無料。詳しくは、利用ガイドをご覧ください。

 講座ページへ
第1部 Web の仕組みを知る
1 ブラウザとサーバのやりとり
2 HTTP で何が送られているか
3 応答の種類とフォーム送信
4 データの渡し方と、状態を持たない HTTP
5 Java で Web アプリが動く仕組み
第2部 プロジェクトを組み立てて動かす
6 Maven とプロジェクトの構成
7 ビルドして起動する

利用ガイド

  • はじめに
  • 受講チケットの購入
  • 講座と教材の利用
  • 教材検索
  • 企業団体向け機能
  • セキュリティについて
  • パートナー様向け機能
  • 利用ガイド
  • 特定商取引法に基づく表記
  • プライバシポリシー
  • 運営会社

SQT はシナジークエストが運営するオンラインIT学習サイトです。