Dependency Manager - Development
When downloading or checking out the source code, please also consult the README in the dependencymanager directory for up to date instructions on how to build that particular version.
The Dependency Manager is built with Maven since version 5, see What’s new in version 5.
The earlier releases (r16 and older) are built with Gradle and bndtools; the instructions for those are in the README.src of their source release.
Prerequisites
-
A recent JDK, 11 or later.
-
Maven 3.9 or later.
-
The Felix Framework, Gogo and Configuration Admin bundles which the integration tests run on have to be in the local Maven repository: either install those modules of the
felix-devrepository first, or use released versions.
If you are using a corporate http proxy, set it up in your ~/.m2/settings.xml.
Compilation using Maven
All commands are run from the dependencymanager directory of the felix-dev repository.
-
Compile everything, run the unit tests and the OSGi integration tests:
$ mvn clean install
-
Compile without running the tests:
$ mvn clean install -DskipTests
-
Build and test a single bundle, with the modules it depends on:
$ mvn clean install -pl org.apache.felix.dependencymanager.shell -am
The modules are:
| Module | Content |
|---|---|
|
the API and implementation |
|
the annotations and the bnd plugin that processes them |
|
loads the components declared with annotations |
|
the Gogo shell commands |
|
the lambda based API |
|
the integration tests, run inside a framework with the |
|
samples |
|
a stress test |