Apache Felix is an open source implementation of the OSGi Release 5 core 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.
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 <level> <id> ... | <id> - set or get bundle start level.cd [<base-URL>] - change or display base URL.find <bundle-name> - display bundles matching substring.headers [<id> ...] - display bundle header properties.help - display impl commands.inspect - inspect dependency information (e.g., packages, service, etc.).install <URL> [<URL> ...] - install bundle(s).log [<max>] [error|warn|info|debug] - list recent log entries.obr help - OSGi bundle repository.ps [-l | -s | -u] - list installed bundles.refresh [<id> ...] - refresh packages.resolve [<id> ...] - attempt to resolve the specified bundles.shutdown - shutdown framework.start <id> [<id> <URL> ...] - start bundle(s).startlevel [<level>] - get or set framework start level.stop <id> [<id> ...] - stop bundle(s).sysprop [-r] [<key>] [<value>] - Display, set, modify and remove system properties.uninstall <id> [<id> ...] - uninstall bundle(s).update <id> [<URL>] - update bundle.version - display version of framework.Felix Framework Distribution
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.iDempiere - OSGi-based, open-source ERP (Enterprise Resource Planning) system.JOnAS 5 - open source Java EE 5 application server.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 applicationsOpencast 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.