OSGi Allianceは標準化団体であり、Javaで構築されたソフトウェアのモジュール組立を可能にするオープンな仕様を作成している。

OSGiではJavaモジュールを「バンドル(Bundle)」と呼び、このバンドルの実行基盤を「OSGiフレームワーク」と呼んでいる。OSGiフレームワークは、動的にバンドルを後から追加できるのが特徴である。たとえば、Eclipseのプラグインはバンドルとして作成されており、Eclipseを再起動しなくても追加したプラグインを有効にできる。

バンドルは、複数のクラスファイルとリソースファイルをアーカイブとしてひとつにまとめたJARファイルである。通常のJARファイルとの違いは、マニフェストファイルにOSGiの仕様に特有な属性を加えていることである。

Apache Felixは、OSGiコアフレームワーク仕様のオープンソース実装である。