OSGiフレームワークとは、Javaのモジュール組み立てを可能にするプラットフォームです。
OSGi Allianceは標準化団体であり、Javaで構築されたソフトウェアのモジュール組立を可能にするオープンな仕様を作成している。
OSGiではJavaモジュールを「バンドル(Bundle)」と呼び、このバンドルの実行基盤を「OSGiフレームワーク」と呼んでいる。
OSGiフレームワークは、動的にバンドルを後から追加できるのが特徴である。
たとえば、Eclipseのプラグインはバンドルとして作成されており、Eclipseを再起動しなくても追加したプラグインを有効にできる。
バンドルは、複数のクラスファイルとリソースファイルをアーカイブとしてひとつにまとめたJARファイルである。
通常のJARファイルとの違いは、マニフェストファイルにOSGiの仕様に特有な属性を加えていることである。
Apache Felixは、OSGiコアフレームワーク仕様のオープンソース実装である。