I think he means (which is actually aligned with my use case) that I can use the classes from the spec this way, when I don’t need an implementation.
> On 29 Feb 2016, at 17:49, David Jencks <[email protected]> wrote: > > As far as I’m concerned, these little bundles are there to make it easier for > implementers of a particular spec to include that spec’s api in their > implementation bundle. It doesn’t do you any good to include the api without > an implementation at runtime. Thus, I think the quote below is highly > misleading. > > david jencks > >> On Feb 29, 2016, at 9:20 AM, Markus Rathgeb <[email protected]> wrote: >> >> FYI >> >> "But what if you want to use the APIs at runtime? To support using the >> APIs at runtime, OSGi has now made the companion code for individual >> specifications available as individual companion code bundles." >> http://blog.osgi.org/2015/08/more-jars-on-maven-central-and-jcenter.html >> >> 2016-02-29 8:40 GMT+01:00 Achim Nierbeck <[email protected]>: >>> Hi >>> >>> it's a bad practice to provide the compendium or core osgi bundles, as those >>> contain far more packages then required. >>> Usually the services implementing those apis should provide the implemented >>> services. As can be seen for eventadmin, >>> configuration admin service and the http service in karaf. >>> >>> regards, Achim >>> >>> >>> 2016-02-28 22:15 GMT+01:00 Daniel McGreal <[email protected]>: >>>> >>>> Hi Karaf users! >>>> >>>> Installing the Compendium in a feature, e.g. with the following primitive >>>> example, restarts the console, because dependent bundles refresh to wire >>>> against it. >>>> >>>> <?xml version="1.0" encoding="UTF-8" standalone="yes"?> >>>> <features xmlns="http://karaf.apache.org/xmlns/features/v1.3.0" >>>> name="cmpn"> >>>> <feature name="cmpn" description="cmpn" >>>> version="2.5.0.BUILD-SNAPSHOT"> >>>> <bundle>mvn:org.osgi/org.osgi.compendium/5.0.0</bundle> >>>> </feature> >>>> </features> >>>> >>>> This is causing me some problems, for example, after the shell restart >>>> feature:(un)install commands result in an NPE. >>>> >>>> java.lang.NullPointerException >>>> at >>>> org.apache.karaf.features.internal.region.SubsystemResolver.resolve(SubsystemResolver.java:216)[9:org.apache.karaf.features.core:4.0.4] >>>> at >>>> org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:263)[9:org.apache.karaf.features.core:4.0.4] >>>> at >>>> org.apache.karaf.features.internal.service.FeaturesServiceImpl.doProvision(FeaturesServiceImpl.java:1089)[9:org.apache.karaf.features.core:4.0.4] >>>> at >>>> org.apache.karaf.features.internal.service.FeaturesServiceImpl$1.call(FeaturesServiceImpl.java:985)[9:org.apache.karaf.features.core:4.0.4] >>>> at >>>> java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_60] >>>> at >>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_60] >>>> at >>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_60] >>>> at java.lang.Thread.run(Thread.java:745)[:1.8.0_60] >>>> >>>> Is there a way to prevent this from happening? >>>> >>>> Best, Dan. >>> >>> >>> >>> >>> -- >>> >>> Apache Member >>> Apache Karaf <http://karaf.apache.org/> Committer & PMC >>> OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/> Committer & >>> Project Lead >>> blog <http://notizblog.nierbeck.de/> >>> Co-Author of Apache Karaf Cookbook <http://bit.ly/1ps9rkS> >>> >>> Software Architect / Project Manager / Scrum Master >>> >
