Java EE を使っている人なら多くの人が遭遇するクラスローダリーク。EclipseなどのIDEでホットデプロイしながら開発していると、突然APサーバから応答がなくなったり、java.lang.OutOfMemory : PermGenが出力されたりする。 原因についてはnekopさんのスライドやyamadanさんのブログに紹介されているので、ここではクラスローダリークを手元で再現させてみて、どのようなヒープダンプになるか紹介する。 ヒープダンプの解析にはEclipseMemoryAnalyzer(MAT)を使う。 1. Duplicate Classes を確認する クラスローダリークが発生している状況では、同一のクラスが異なるクラスローダよりロードされている事象が起こっている。MATでは重複クラスロードの一覧を表示する機能があるため、1クリックで確認できる。 Tomcatの場合 To
![クラスローダリークとヒープダンプ - n-agetsumaの日記](https://cdn-ak-scissors.b.st-hatena.com/image/square/dbde23c7811458d6246dee42960601984242d95f/height=288;version=1;width=512/http%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fn%2Fn_agetsuma%2F20140517%2F20140517122757.png)