Description
Deploying Oak 1.8.2 into Karaf OSGi container v4.1.4 in addition to needing oak-store-composite bundle I had to add a custom bundle with dummy Provide-Capability for the following services:
<Provide-Capability>
osgi.service;objectClass="com.codahale.metrics.MetricRegistry",
osgi.service;objectClass="org.apache.jackrabbit.oak.api.jmx.CacheStatsMBean",
osgi.service;objectClass="org.apache.jackrabbit.oak.api.jmx.QueryEngineSettingsMBean",
osgi.service;objectClass="org.apache.jackrabbit.oak.spi.state.NodeStore",
osgi.service;objectClass="org.apache.jackrabbit.oak.spi.state.NodeStoreProvider",
osgi.service;objectClass="org.apache.jackrabbit.oak.stats.StatisticsProvider",
osgi.service;objectClass="org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore",
osgi.service;objectClass="java.util.concurrent.Executor",
osgi.service;objectClass="org.apache.jackrabbit.oak.spi.blob.BlobStore",
osgi.service;objectClass="org.apache.jackrabbit.oak.spi.mount.MountInfoProvider"
</Provide-Capability>
The suspicion is that the OSGi bundles providing these services don't have the respective Provide-Capability generated in the MANIFEST.