| この記事の要点 |
|---|
|
.m2 フォルダとは
Maven が依存ライブラリ(jar / pom)をダウンロードしてキャッシュする場所。同じライブラリが複数プロジェクトで使われても、1 度だけダウンロードして再利用します。
OS 別のデフォルト場所
| OS | パス |
|---|---|
| Linux | /home/<username>/.m2/ または ~/.m2/ |
| Mac | /Users/<username>/.m2/ または ~/.m2/ |
| Windows | C:\Users\<username>\.m2\ または %USERPROFILE%\.m2\ |
| WSL | ~/.m2/ (WSL 内のホーム) |
確認方法
# 1. 直接見る
$ ls -la ~/.m2/
drwxr-xr-x 4 user user 4096 May 15 12:00 .
drwxr-xr-x 50 user user 4096 May 15 12:00 ..
drwxr-xr-x 3 user user 4096 May 15 12:00 repository/
-rw------- 1 user user 1024 May 15 12:00 settings.xml
# 2. mvn コマンドで確認
$ mvn help:effective-settings | grep localRepository
<localRepository>/home/user/.m2/repository</localRepository>
# 3. mvn のシステム情報
$ mvn -version
Apache Maven 3.9.4
Maven home: /usr/share/maven
Java version: 17.0.8, vendor: Eclipse Adoptium
Java home: /usr/lib/jvm/java-17
# Windows コマンドプロンプト
> dir %USERPROFILE%\.m2
> mvn help:effective-settings | findstr localRepository
.m2 の中身
| パス | 内容 |
|---|---|
~/.m2/repository/ | ダウンロード済みの jar / pom(Group ID 別フォルダ) |
~/.m2/settings.xml | ユーザ設定(リポジトリ・認証等) |
~/.m2/settings-security.xml | 暗号化されたパスワード(任意) |
~/.m2/repository/.cache/m2e/ | Eclipse m2e のキャッシュ |
~/.m2/wrapper/ | Maven Wrapper(mvnw)の Maven バイナリ |
場所をデフォルトから変更する
SSD 容量節約や、共有マシンでの分離のため、別の場所に変えたいことがあります。
方法 1: settings.xml で指定
<!-- ~/.m2/settings.xml -->
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" ...>
<localRepository>D:/maven-repo</localRepository>
</settings>
方法 2: 環境変数 M2_HOME(非推奨:Maven 自体の場所)
注意: M2_HOME は Maven インストールディレクトリで、.m2 の場所ではありません。.m2 の場所を変えるのは settings.xml。
方法 3: コマンドラインで一時的に
$ mvn -Dmaven.repo.local=/path/to/custom/repo install
サイズが大きくなりすぎたら
長期間使うと数 GB~数十 GB になります。整理方法:
# サイズ確認
$ du -sh ~/.m2/repository/
8.5G
# 重い Group ID トップ 10
$ du -sh ~/.m2/repository/*/ | sort -rh | head -10
# 全削除して再ダウンロード(思い切った方法)
$ rm -rf ~/.m2/repository/
# → 次のビルドで必要分だけ再ダウンロード
# 古いバージョンだけ削除(Maven Help プラグイン)
$ mvn dependency:purge-local-repository -DreResolve=false
# あるいは「使わなくなった jar」を削除するツールを使う
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">
<!-- ローカルリポジトリの場所 -->
<localRepository>${user.home}/.m2/repository</localRepository>
<!-- 認証情報 (社内リポジトリ等) -->
<servers>
<server>
<id>internal-repo</id>
<username>myuser</username>
<password>secret</password> <!-- 暗号化推奨 -->
</server>
</servers>
<!-- プロキシ -->
<proxies>
<proxy>
<active>true</active>
<protocol>http</protocol>
<host>proxy.example.com</host>
<port>8080</port>
<nonProxyHosts>localhost|*.internal</nonProxyHosts>
</proxy>
</proxies>
<!-- ミラー (中央リポジトリの代わりに使う) -->
<mirrors>
<mirror>
<id>nexus-mirror</id>
<mirrorOf>central</mirrorOf>
<url>https://nexus.example.com/repository/maven-public/</url>
</mirror>
</mirrors>
<!-- リポジトリ追加 -->
<profiles>
<profile>
<id>internal</id>
<repositories>
<repository>
<id>internal-repo</id>
<url>https://nexus.example.com/repository/maven-releases/</url>
</repository>
</repositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>internal</activeProfile>
</activeProfiles>
</settings>
関連記事
子ページ
子ページはありません
同階層のページ
- ビルドする方法(eclipse)
- エラー一覧
- .m2フォルダの場所
- ローカル(サードパーティ製)のjarを追加する方法
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript で base URL を取得する方法|window.location.origin
- 4 YouTube Data API v3 エラー一覧|403・400・404 の原因と対処
- 5 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 6 3Dグラフィックスのソフト一覧|Blender・Metasequoiaと用途別の選び方
- 7 Spring Frameworkのアノテーション一覧
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- Visual Studio「デザイナーを表示できません」エラーの原因と対処 2026-10-28 12:06:00
- SSH 認証に失敗しました。再試行してください の対処 2026-10-28 12:06:00
- SSH2 秘密鍵の読み込みに失敗しました の原因と対処 2026-10-28 12:06:00
- TeraTerm のよくあるエラーと対処法完全ガイド — Connection refused / 2026-10-28 12:06:00
- Visual Studio エラー一覧|コンパイルエラー・警告の確認方法と対処 2026-10-28 11:39:57
- Whitelabel Error Page の原因と消し方|Spring Boot のエラーページ 2026-10-28 11:39:57
- Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法 2026-10-28 11:39:57
- SQL WHERE 句完全ガイド 2026-10-28 11:39:57
- SQL JOIN 完全ガイド (INNER/LEFT/RIGHT/FULL OUTER) 2026-10-28 11:39:57
- tomcat の起動 / 停止ログと catalina.log・catalina.out の違い 2026-10-28 10:24:23
- Tomcat の起動確認方法 5 つ|localhost:8080・ポート・プロセス・ログ 2026-10-28 10:24:23
- Oracle 19c COMMITの使い方: 暗黙コミット・自動確定・応答不明時の確認 2026-10-28 09:59:09
- Oracle 19c DELETE文|削除対象の確認・COMMIT前の判断・ROLLBACKの条件 2026-10-28 09:59:09
- Oracle 19c INSERT文|INSERT ALL・SELECT・RETURNINGとMERGEの使い分け 2026-10-28 09:59:09
- Oracle 19cのトランザクション制御|COMMIT・ROLLBACK・分離レベルと接続設定 2026-10-28 09:59:09