Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [e4-dev] Dynamic Eclipse 4 with Clojure language

Hi,

I'm sure it's in the classpath of my main bundle, yes, it's part of the core clojure Classes. What I don't understand is the dynamics that are at play. At the time getDeclaredMethods is called, I wouldn't expect clojure internals to be at play, or I would expect that they use the right classloader, and not the eclipse di bundle's classloader...

Le vendredi 22 novembre 2013, Lars Vogel a écrit :
Hi,

are you sure IPersistentVector is in your classpath? From the stacktrace it looks as if it cannot find it.

Best regards, Lars


2013/11/21 Laurent PETIT <laurent.petit@xxxxxxxxx>
Pragmatic question : I'm unable to have the Annotations / Dependency
Injection mechanism work with my Clojure-defined type.

I was able to dynamically create the MCommand, attach it to the
Application, activate my handler instance via the EHandlerService),
but when I invoke the generated handler via
handlerService.executeHandler(parameterizedCommand), I get the
exception below.

I'm currently unable to understand what's happening. There's the
dependency injection mechanism calling getDeclaredMethods() ... and
things go down to trying to reload the class ... something like that ?

ENTRY org.eclipse.ui 4 0 2013-11-21 23:38:59.807

!MESSAGE Unhandled event loop exception

!STACK 0

java.lang.NoClassDefFoundError: clojure/lang/IPersistentVector

at java.lang.Class.getDeclaredMethods0(Native Method)

at java.lang.Class.privateGetDeclaredMethods(Class.java:2451)

at java.lang.Class.getDeclaredMethods(Class.java:1810)

at org.eclipse.e4.core.internal.di.InjectorImpl.getDeclaredMethods(InjectorImpl.java:739)

at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:228)

at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:224)

at org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:132)

at org.eclipse.e4.core.commands.internal.HandlerServiceHandler.setEnabled(HandlerServiceHandler.java:82)

at org.eclipse.core.commands.Command.setEnabled(Command.java:886)

at org.eclipse.core.commands.Command.executeWithChecks(Command.java:488)

at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:508)

at org.eclipse.e4.core.commands.internal.HandlerServiceImpl.executeHandler(HandlerServiceImpl.java:213)

at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.executeCommand(KeyBindingDispatcher.java:285)

at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.press(KeyBindingDispatcher.java:504)

at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.processKeyEvent(KeyBindingDispatcher.java:555)

at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.filterKeySequenceBindings(KeyBindingDispatcher.java:376)

at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.access$0(KeyBindingDispatcher.java:322)

at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher$KeyDownFilter.handleEvent(KeyBindingDispatcher.java:84)

at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)

at org.eclipse.swt.widgets.Display.filterEvent(Display.java:1080)

at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4165)

at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1466)

at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1489)

at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1474)

at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1503)

at org.eclipse.swt.widgets.Control.insertText(Control.java:2084)

at org.eclipse.swt.widgets.Canvas.insertText(Canvas.java:277)

at org.eclipse.swt.widgets.Display.windowProc(Display.java:5646)

at org.eclipse.swt.internal.cocoa.OS.objc_msgSend(Native Method)

at org.eclipse.swt.internal.cocoa.NSResponder.interpretKeyEvents(NSResponder.java:68)

at org.eclipse.swt.widgets.Composite.keyDown(Composite.java:594)

at org.eclipse.swt.widgets.Display.windowProc(Display.java:5558)

at org.eclipse.swt.internal.cocoa.OS.objc_msgSendSuper(Native Method)

at org.eclipse.swt.widgets.Widget.callSuper(Widget.java:221)

at org.eclipse.swt.widgets.Widget.windowSendEvent(Widget.java:2104)

at org.eclipse.swt.widgets.Shell.windowSendEvent(Shell.java:2318)

at org.eclipse.swt.widgets.Display.windowProc(Display.java:5620)

at org.eclipse.swt.internal.cocoa.OS.objc_msgSendSuper(Native Method)

at org.eclipse.swt.widgets.Display.applicationSendEvent(Display.java:5057)

at org.eclipse.swt.widgets.Display.applicationProc(Display.java:5206)

at org.eclipse.swt.internal.

Back to the top