Apache Celix Explained

Apache Celix[1]
Apache Celix
Developer:Apache Software Foundation
Latest Release Version:2.3.0
Latest Release Date:[2]
Programming Language: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.

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

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

Notes and References

  1. https://github.com/apache/celix Repository Mirror at GitHub
  2. Web site: Apache Celix. 26 September 2022.