Apache Felix

Apache Felix is an open source implementation of the OSGi Core Release 6 framework specification. The initial codebase was donated from the Oscar project at ObjectWeb. The developers worked on Felix for a full year and have made various improvements while retaining the original footprint and performance. On June 21, 2007, the project graduated from incubation as a top level project and is considered the smallest size software at Apache Software Foundation.

Running Felix
To run Apache Felix OSGi, you need to download the felix-framework-4.x.x.tar.gz or felix-framework-4.x.x.zip compressed file from the site. Once you have extracted the Felix framework distribution, from the command line in the extracted directory type the following:

java -jar bin/felix.jar

After bundles are installed and running, typing a command like help from the console will display all available commands, which are:


 * bundlelevel  ... |  - set or get bundle start level.
 * cd []                    - change or display base URL.
 * find                  - display bundles matching substring.
 * headers [ ...]                 - display bundle header properties.
 * help                               - display impl commands.
 * inspect                            - inspect dependency information (e.g., packages, service, etc.).
 * install  [ ...]          - install bundle(s).
 * log [ ] [error|warn|info|debug] - list recent log entries.
 * obr help                           - OSGi bundle repository.
 * ps [-l | -s | -u]                  - list installed bundles.
 * refresh [ ...]                 - refresh packages.
 * resolve [ ...]                 - attempt to resolve the specified bundles.
 * shutdown                           - shutdown framework.
 * start  [  ...]        - start bundle(s).
 * startlevel [ ]               - get or set framework start level.
 * stop  [ ...]               - stop bundle(s).
 * sysprop [-r] [ ] [ ]     - Display, set, modify and remove system properties.
 * uninstall  [ ...]          - uninstall bundle(s).
 * update <id> [<URL>]                - update bundle.
 * version                            - display version of framework.

Version history
Felix Framework Distribution

Subprojects
List of subprojects of which the Apache Felix framework consists.

Projects using Felix
The projects listed below highlight the adoption of Apache Felix:
 * ServiceMix 4 - An open source ESB with an OSGi core. It also includes JBI support.
 * Apache Sling - OSGi-based applications layer for JCR content repositories.
 * EasyBeans - open source EJB 3 container.
 * GlassFish (v3) - application server for Java EE.
 * JOnAS 5 - open source Java EE 5 application server.
 * JORAM and JoramMQ - open source messaging: JMS, AMQP and MQTT broker.
 * Project Fuji in Open ESB v3 - Light weight and modular ESB core runtime.
 * Jitsi (formerly known as SIP Communicator) - open source Java VoIP and multi-protocol instant messenger.
 * modulefusion - open source collection for Java enterprise applications.
 * NetBeans - The free MultiLanguage IDE.
 * SOA Software - API Gateway application from Akana (formerly SOA Software).
 * Spring Roo - RAD tool for Java-based enterprise applications
 * Opencast Matterhorn - Open Source software to produce, manage and distribute academic audio and video content, especially lecture recordings.
 * JIRA - JIRA supports plug-ins as OSGi bundles.
 * Adobe Experience Manager - Enterprise content management system and digital asset management developed by Adobe Inc.