Hmm. At one point, the Felix scr command NPE'd without shell-compat. I guess I'll try it again in 4.0.6.
On the other hand, I'm probably stuck with blueprint sooner or later due to some other dependencies, so perhaps I should let this go. Thanks. benson On Mon, Sep 5, 2016 at 1:14 PM, Jean-Baptiste Onofré <[email protected]> wrote: > Yes shell-compat is the feature to use to support gogo commands and "old > style" Karaf commands (which were using blueprint). Afair gogo commands also > work directly in shell console without compat. > > Regards > JB > > Regards > JB > > On Sep 5, 2016, at 19:02, Benson Margulies <[email protected]> wrote: >> >> shell-compat, via the shell 'console', depends on blueprint. Proof >> below. shell does not. Minimal includes shell, not shell-compat. This >> is sad, as shell-compat is required to make gogo commands work right. >> But it explains my confusion, as I thought that shell-compat was in >> 'minimal' and I was wrong. >> >> The details are as follows: >> >> [caused by: Unable to resolve org.apache.karaf.shell.console/4.0.6: >> missing requirement [org.apache.karaf.shell.console/4.0.6] >> osgi.wiring.package; >> >> filter:="(&(osgi.wiring.package=org.apache.aries.blueprint)(version>=1.5.0)(!(version>=2.0.0)))"]] >> >> The MANIFEST.MF for the 4.0.6 version of >> org.apache.karaf.shell.console. It has a Bundle-Blueprint and here is >> a fragment. >> >> org.apache.k >> araf.shell.console;version="4.0.6";uses:="org.apache.felix.service.comm >> and,org.apache.karaf.shell.commands,org.osgi.framework,org.osgi.service >> .blueprint.container,org.slf4j" >> >> >> On >> Mon, Sep 5, 2016 at 11:49 AM, Jean-Baptiste Onofré <[email protected]> >> wrote: >>> >>> It's maybe because your bundles require blueprint (or a feature >>> dependency), >>> no ? >>> >>> If you use the karaf-service-maven-plugin with the Karaf shell >>> annotations, >>> it doesn't use blueprint. >>> >>> Regards >>> JB >>> >>> On 09/05/2016 05:46 PM, Benson Margulies wrote: >>>> >>>> >>>> That error I sent is from karaf 4.0.6. it seems to me to be saying that >>>> the shell requires blueprint. Am I misreading it? >>>> >>>> >>>> On Sep 5, 2016 11:21 AM, "Jean-Baptiste Onofré" <[email protected] >>>> <mailto:[email protected]>> wrote: >>>> >>>> Hi Benson, >>>> >>>> on Karaf 4, shell doesn't depend to blueprint anymore. >>>> >>>> Regards >>>> JB >>>> >>>> >>>> On 09/05/2016 05:07 PM, Benson Margulies wrote: >>>> >>>> Achim, Yes, I understand the principle. What I don't understand >>>> is how >>>> anyone uses 'minimal'. Minimal includes shell, and shell >>>> requires >>>> blueprint, and blueprint isn't 'minimal'. Or is the idea that >>>> no >>>> one >>>> should try to use minimal, it's just a building block for >>>> standard and >>>> others? >>>> >>>> >>>> On Mon, Sep 5, 2016 at 11:05 AM, Achim Nierbeck >>>> <[email protected] <mailto:[email protected]>> >>>> wrote: >>>> >>>> yep it's minimal so only the minimal required bundles are >>>> there. >>>> Blueprint is part of standard, as that isn't minimal >>>> anymore >>>> ... >>>> >>>> regards, Achiim >>>> >>>> >>>> 2016-09-05 16:45 GMT+02:00 Benson Margulies >>>> <[email protected] <mailto:[email protected]>>: >>>> >>>> >>>> >>>> Folks, >>>> >>>> >>>> When I try to run an assembly that lists 'minimal' as a >>>> boot feature, >>>> I get this error, indicating that (If I read it >>>> correctly) the shell >>>> requires blueprint. Is this intended? I can switch to >>>> 'standard' >>>> easily enough. >>>> >>>> >>>> 2016-09-05 10:42:36,560 | ERROR | pool-6-thread-1 | >>>> BootFeaturesInstaller | 6 - >>>> org.apache.karaf.features.core >>>> - 4.0.6 | Error installing boot features >>>> org.osgi.service.resolver.ResolutionException: Unable >>>> to >>>> resolve root: >>>> missing requirement [root] osgi.identity; >>>> osgi.identity=rosapi-front-end-service; >>>> type=karaf.feature; >>>> version="[1.2.6.SNAPSHOT,1.2.6.SNAPSHOT]"; >>>> >>>> >>>> >>>> >>>> filter:="(&(osgi.identity=rosapi-front-end-service)(type=karaf.feature)(version>=1.2.6.SNAPSHOT)(version<=1.2.6.SNAPSHOT))" >>>> [caused by: Unable to resolve >>>> rosapi-front-end-service/1.2.6.SNAPSHOT: >>>> missing requirement >>>> [rosapi-front-end-service/1.2.6.SNAPSHOT] >>>> osgi.identity; >>>> osgi.identity=org.apache.karaf.shell.console; >>>> type=osgi.fragment; version="[4.0.6,4.0.6]"; >>>> resolution:=mandatory >>>> [caused by: Unable to resolve >>>> org.apache.karaf.shell.console/4.0.6: >>>> missing requirement >>>> [org.apache.karaf.shell.console/4.0.6] >>>> osgi.wiring.package; >>>> >>>> >>>> >>>> filter:="(&(osgi.wiring.package=org.apache.aries.blueprint)(version>=1.5.0)(!(version>=2.0.0)))"]] >>>> at >>>> >>>> >>>> org.apache.felix.resolver.ResolutionError.toException(Resolutio >>>> >>>> >>>> >>>> >>>> >>>> -- >>>> >>>> Apache Member >>>> Apache Karaf <http://karaf.apache.org/> Committer & PMC >>>> OPS4J Pax Web >>>> <http://wiki.ops4j.org/display/paxweb/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 >>>> >>>> >>>> -- >>>> Jean-Baptiste Onofré >>>> [email protected] <mailto:[email protected]> >>>> http://blog.nanthrax.net >>>> Talend - http://www.talend.com >>> >>> >>> >>> -- >>> Jean-Baptiste Onofré >>> [email protected] >>> http://blog.nanthrax.net >>> Talend - http://www.talend.com
