We are not passing any value. The [default 
configuration](https://github.com/jclouds/jclouds-karaf/blob/master/feature/src/main/resources/shell.cfg)
 does not set the engine value, so "groovy" was used (which seems to be the 
[right 
value](https://github.com/groovy/groovy-core/blob/master/subprojects/groovy-jsr223/src/main/java/org/codehaus/groovy/jsr223/GroovyScriptEngineFactory.java#L44)).
 I've also tried setting custom values there and directly instantiating the 
javascript engine classes provided by the JRE, but both tests failed.

>but nothing happened? Were you able to query the OSGiScriptEngineManager to 
>see which engines it had been able to load?

Yes. Well, there is no default constructor for that class; it requires the 
BundleContext. I tried getting the context by calling the OSGI `FrameworkUtil` 
to get and pass it to the engine. However, it couldn't load the engines. I'm 
pretty sure I was doing something wrong here, as I don't know enough about OSGi 
to be confident about what I was doing :)

>The question I would have at this point is whether this ever worked? I'd be 
>surprised if it was broken all the way from the time it was implemented. So I 
>wonder what has changed (on the Felix side?) to break this?

I really don't know. Honestly, I've never used the interactive shell except for 
installing features for other providers, so I have never tried. I don't know if 
there were relevant changes that might have broken this.


BTW, regarding the shaded bundle fix, it works, but there is still this error 
when the CLI starts:

```
$ cat karaf.log
Sep 06, 2016 3:28:20 PM org.apache.karaf.main.SimpleFileLock lock
INFO: locking
2016-09-06 15:28:21,596 | INFO  | FelixStartLevel  | fileinstall                
      | ?                                   ? | 6 - 
org.apache.felix.fileinstall - 3.4.2 | Updating configuration from 
org.apache.jclouds.credentials.cfg
2016-09-06 15:28:21,866 | INFO  | FelixStartLevel  | BlueprintExtender          
      | rint.container.BlueprintExtender  146 | 12 - 
org.apache.aries.blueprint.core - 1.4.0 | No quiesce support is available, so 
blueprint components will not participate in quiesce operations
2016-09-06 15:28:22,953 | WARN  | FelixStartLevel  | ConsoleFactory             
      | ell.console.jline.ConsoleFactory  193 | 15 - 
org.apache.karaf.shell.console - 2.3.9 | Error starting ssh agent for local 
console
java.lang.NoClassDefFoundError: org/apache/sshd/agent/SshAgent
        at 
org.apache.karaf.shell.console.jline.ConsoleFactory.startAgent(ConsoleFactory.java:186)[15:org.apache.karaf.shell.console:2.3.9]
        at 
org.apache.karaf.shell.console.jline.ConsoleFactory.doStart(ConsoleFactory.java:118)[15:org.apache.karaf.shell.console:2.3.9]
        at 
org.apache.karaf.shell.console.jline.ConsoleFactory$1.run(ConsoleFactory.java:91)
        at java.security.AccessController.doPrivileged(Native Method)[:1.7.0_51]
        at javax.security.auth.Subject.doAs(Subject.java:415)[:1.7.0_51]
        at 
org.apache.karaf.shell.console.jline.ConsoleFactory.start(ConsoleFactory.java:89)[15:org.apache.karaf.shell.console:2.3.9]
        at 
org.apache.karaf.shell.console.jline.ConsoleFactory.registerCommandProcessor(ConsoleFactory.java:68)[15:org.apache.karaf.shell.console:2.3.9]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native 
Method)[:1.7.0_51]
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)[:1.7.0_51]
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.7.0_51]
        at java.lang.reflect.Method.invoke(Method.java:606)[:1.7.0_51]
        at 
org.apache.aries.blueprint.utils.ReflectionUtils.invoke(ReflectionUtils.java:297)[12:org.apache.aries.blueprint.core:1.4.0]
        at 
org.apache.aries.blueprint.container.AbstractServiceReferenceRecipe$Listener.invokeMethods(AbstractServiceReferenceRecipe.java:574)[12:org.apache.aries.blueprint.core:1.4.0]
        at 
org.apache.aries.blueprint.container.AbstractServiceReferenceRecipe$Listener.bind(AbstractServiceReferenceRecipe.java:556)[12:org.apache.aries.blueprint.core:1.4.0]
        at 
org.apache.aries.blueprint.container.AbstractServiceReferenceRecipe.bind(AbstractServiceReferenceRecipe.java:451)[12:org.apache.aries.blueprint.core:1.4.0]
        at 
org.apache.aries.blueprint.container.ReferenceRecipe.bind(ReferenceRecipe.java:168)[12:org.apache.aries.blueprint.core:1.4.0]
        at 
org.apache.aries.blueprint.container.ReferenceRecipe.retrack(ReferenceRecipe.java:136)[12:org.apache.aries.blueprint.core:1.4.0]
        at 
org.apache.aries.blueprint.container.AbstractServiceReferenceRecipe.updateListeners(AbstractServiceReferenceRecipe.java:443)[12:org.apache.aries.blueprint.core:1.4.0]
        at 
org.apache.aries.blueprint.container.ReferenceRecipe.internalCreate(ReferenceRecipe.java:115)[12:org.apache.aries.blueprint.core:1.4.0]
        at 
org.apache.aries.blueprint.di.AbstractRecipe$1.call(AbstractRecipe.java:79)[12:org.apache.aries.blueprint.core:1.4.0]
        at java.util.concurrent.FutureTask.run(FutureTask.java:262)[:1.7.0_51]
        at 
org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:88)[12:org.apache.aries.blueprint.core:1.4.0]
        at 
org.apache.aries.blueprint.container.BlueprintRepository.createInstances(BlueprintRepository.java:245)[12:org.apache.aries.blueprint.core:1.4.0]
        at 
org.apache.aries.blueprint.container.BlueprintRepository.createAll(BlueprintRepository.java:183)[12:org.apache.aries.blueprint.core:1.4.0]
        at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:681)[12:org.apache.aries.blueprint.core:1.4.0]
        at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:378)[12:org.apache.aries.blueprint.core:1.4.0]
        at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:269)[12:org.apache.aries.blueprint.core:1.4.0]
        at 
org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:276)[12:org.apache.aries.blueprint.core:1.4.0]
        at 
org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:245)[12:org.apache.aries.blueprint.core:1.4.0]
        at 
org.apache.aries.blueprint.container.BlueprintExtender.modifiedBundle(BlueprintExtender.java:235)[12:org.apache.aries.blueprint.core:1.4.0]
        at 
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:500)[11:org.apache.aries.util:1.1.0]
        at 
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:433)[11:org.apache.aries.util:1.1.0]
        at 
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$AbstractTracked.track(BundleHookBundleTracker.java:725)[11:org.apache.aries.util:1.1.0]
        at 
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.bundleChanged(BundleHookBundleTracker.java:463)[11:org.apache.aries.util:1.1.0]
        at 
org.apache.aries.util.tracker.hook.BundleHookBundleTracker$BundleEventHook.event(BundleHookBundleTracker.java:422)[11:org.apache.aries.util:1.1.0]
        at 
org.apache.felix.framework.util.SecureAction.invokeBundleEventHook(SecureAction.java:1103)[org.apache.felix.framework-4.0.3.jar:]
        at 
org.apache.felix.framework.util.EventDispatcher.createWhitelistFromHooks(EventDispatcher.java:695)[org.apache.felix.framework-4.0.3.jar:]
        at 
org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:483)[org.apache.felix.framework-4.0.3.jar:]
        at 
org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4244)[org.apache.felix.framework-4.0.3.jar:]
        at 
org.apache.felix.framework.Felix.startBundle(Felix.java:1923)[org.apache.felix.framework-4.0.3.jar:]
        at 
org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1191)[org.apache.felix.framework-4.0.3.jar:]
        at 
org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:295)[org.apache.felix.framework-4.0.3.jar:]
        at java.lang.Thread.run(Thread.java:744)[:1.7.0_51]
Caused by: java.lang.ClassNotFoundException: org.apache.sshd.agent.SshAgent not 
found by org.apache.karaf.shell.console [15]
        at 
org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1460)
        at 
org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:72)
        at 
org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1843)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_51]
        ... 43 more
```


-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-karaf/pull/77#issuecomment-244952651

Reply via email to