1か月ほど前から、Tomcatの起動時にEclipseがCPUを100%(注)占拠し、
それに伴いTomcatの起動時間が遅くなるという現象が目立ち始めていたのですが、
原因が判らず、放置していました。
(注) デュアルコアなので、名目上は50%
しかし今日、どうしても我慢ならんということで、きちんと調べることに。
で、原因が判りました。
org.springframework.beans.factory.support.DefaultListableBeanFactory
このクラスがコンソールに吐くログが原因でした。
このクラスは、ロードしたBeanの一覧を一行でログに吐くのですが、
Beanが数百個ある場合1行で数万文字のログを吐きます。これがEclipseのコンソールに大きな負荷をかけていたようです。
このクラスのログレベルをwarn以上にすると、Eclipseの負荷は大幅に低下し、
それに伴いTomcatの起動時間は遅くなる前の水準へと戻りました。
意外と簡単なオチだったなー。もっと早く調べておけばよかった。