Apache Celix

{{Notability|Products|date=July 2020}}

{{Infobox software

| title = Apache Celix[https://github.com/apache/celix Repository Mirror at GitHub]

| name = Apache Celix

| logo = File:Apache_Celix_Logo.svg

| developer = Apache Software Foundation

| released = {{Start date and age|2010|11}}

| latest release version = 2.4.0

| latest release date = {{Start date and age|2023|09|29}}{{cite web|url=https://celix.apache.org/|title=Apache Celix|access-date=3 March 2025}}

| repo = {{URL|https://gitbox.apache.org/repos/asf?p{{=}}celix.git|Celix Repository}}

| 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

{{reflist}}

{{cite web

|url=https://celix.apache.org/

|title=Apache Celix website

|publisher=The Apache Software Foundation

|year=2018

|access-date=2018-03-22

}} "Prose in this article was copied from this source, which is released under an [http://www.apache.org/licenses/LICENSE-2.0 Apache License, Version 2.0]"