JSR 291はOSGi(Open Services Gateway initiative)と呼ばれる仕様をJava SEへ移植しようとしている試みです。OSGiとは、稼動しているJVMに対してモジュールをダイナミックに追加したり削除するようなアプリケーションのライフサイクルの管理を行うための仕様が策定されているものです。そのためOSGi仕様を実装しているフレームワークを使用するとアプリケーションを止めることなくモジュールの追加、削除を行うことができます。 JSR 291で提案されている仕様の元となっているOSGi仕様では、モジュールをBundleという単位で扱います。このBundleをインストール/アンインストールすることで、モジュールの追加/削除をダイナミックに行います。 BundleはJAR形式で圧縮するか、もしくは圧縮せずにフォルダ形式のまま配布を行いますが、JARファイルのメタデ