github/gitignore · Maven.gitignore
Maven .gitignore テンプレート解説
Maven.gitignore が target フォルダー、release プラグインのバックアップ、shade プラグインの成果物、Maven ラッパーの jar、Eclipse のファイルを無視する理由を説明します。
Maven.gitignore は Maven がビルドとリリースの過程で作るファイルを防ぐ。すべての成果物が target/ に集まるよう設計されたツールなので、ルールは簡単である。
Maven ラッパーは mvnw、mvnw.cmd、.mvn/wrapper/maven-wrapper.properties をコミットし、jar はテンプレートどおり無視するのが最近の推奨方式である。ラッパースクリプトが必要なときに jar や Maven の配布物をダウンロードする。
ルール別の解説
| パターン | 何を、なぜ無視するか |
|---|---|
target/ | ビルド出力コンパイルされたクラス、テスト結果、パッケージングされた jar・war が集まる標準の出力フォルダーである。mvn clean で削除して作り直す。 |
pom.xml.tagpom.xml.releaseBackuppom.xml.nextrelease.properties | release プラグインのファイルmaven-release-plugin が release:prepare の途中で作るバックアップと進行状態のファイルである。リリースが完了するかロールバックすれば不要になる。 |
pom.xml.versionsBackup | versions プラグインのバックアップversions-maven-plugin が versions:set の前に残す元ファイルのバックアップである。 |
dependency-reduced-pom.xmlbuildNumber.properties | プラグインの生成ファイルmaven-shade-plugin が作る縮小版 POM と、buildnumber プラグインの番号ファイルである。 |
.mvn/timing.properties | ローカルの計測値ビルド時間の計測結果で、人によって値が異なる。 |
.mvn/wrapper/maven-wrapper.jar | ラッパー jarラッパースクリプトが必要なときにダウンロードできるバイナリである。テンプレートがリンクしている Maven Wrapper のドキュメントに、jar なしで使う方法が説明されている。 |
.project.classpath | Eclipse m2e のファイルEclipse が POM から生成するプロジェクトファイルである。 |
実務での注意点
.mvn/maven.configと.mvn/jvm.configはチーム共通のビルドオプションなのでコミットする。このテンプレートはこの 2 つのファイルを無視しない。settings.xmlにリポジトリのパスワードを入れるなら、プロジェクトではなく~/.m2/settings.xmlに置く。- IntelliJ を使うなら JetBrains テンプレートも一緒に選択する。
元のテンプレート
Maven.gitignore
target/pom.xml.tagpom.xml.releaseBackuppom.xml.versionsBackuppom.xml.nextrelease.propertiesdependency-reduced-pom.xmlbuildNumber.properties.mvn/timing.properties# https://maven.apache.org/tools/wrapper/#Usage_with_or_without_Binary_JAR.mvn/wrapper/maven-wrapper.jar# Eclipse m2e generated files# Eclipse Core.project# JDT-specific (Eclipse Java Development Tools).classpath
テンプレートの出典: github/gitignore/Maven.gitignore @356fd7b (2026-09-11) · CC0-1.0