Apache Celix

Last updated
Apache Celix [1]
Developer(s) Apache Software Foundation
Initial releaseNovember 2010;14 years ago (2010-11)
Stable release
2.4.0 / September 29, 2023;17 months ago (2023-09-29) [2]
Repository Celix Repository
Written in C, C++
Operating system Linux, macOS
License Apache License 2.0
Website https://celix.apache.org/

Apache Celix is an open-source implementation of the OSGi specification adapted to C and C++ developed by the Apache Software Foundation. The project aims to provide a framework to develop (dynamic) modular software applications using component and/or service-oriented programming.

Contents

Apache Celix is primarily developed in C and adds an additional abstraction, in the form of a library, to support for C++.

Modularity in Apache Celix is achieved by supporting - run-time installed - bundles. Bundles are zip files and can contain software modules in the form of shared libraries. Modules can provide and request dynamic services, for and from other modules, by interacting with a provided bundle context. Services in Apache Celix are "plain old" structs with function pointers or "plain old C++ Objects" (POCO).

History

Apache Celix was welcomed in the Apache Incubator at November 2010 and graduated to Top Level Project from the Apache Incubator in July 2014.

References

  1. Repository Mirror at GitHub
  2. "Apache Celix" . Retrieved 3 March 2025.

"Apache Celix website". The Apache Software Foundation. 2018. Retrieved 2018-03-22. "Prose in this article was copied from this source, which is released under an Apache License, Version 2.0"