開発中のDIコンテナは段々と依存ライブラリも増えて、ライブラリの管理が大変になってきました。今までは4つくらいだったので管理は特に大変ではありませんでしたが、トランザクション対応とか色々やっているうちにライブラリ数が4から14へ・・・。
そこでライブラリの管理を解決する為にMaven2を導入しました。特にビルドはビルド用のスクリプトで事足りているので、依存ライブラリの管理だけやらせています・・・。とはいえ他の機能の使い方がよく分からないだけなんですが・・・。
自分のプロジェクトに、例えばStrutsに依存しますと設定すれば、Strutsのjarの他にcommons-validatorやらcommons-fileuploadなどのjarも同時に落としてくれます。依存するライブラリが依存するものまで同時に管理してくれるのです。これは便利。
依存ライブラリの管理が簡単になるので、最低限の利用でもmaven2はお勧めです。
ちなみに配布用にライブラリを一括取得してlibディレクトリなどにコピーしたい場合は、mvn dependency:copy-dependencies -DoutputDirectory=libを実行するだけでlibに依存するもののみがコピーされます。後は今までどおりAntのビルドを行うだけです。