[EVL] NoSuchMethodError in exported plugin [message #659445] |
Mon, 14 March 2011 01:58 |
Christian Messages: 14 Registered: February 2011 |
Junior Member |
|
|
Hello!
I have built a GMF Editor, enabled validation and added the Epsilon Validation Framework.
So far everything worked fine. When i start my Editor as an Eclipse Application (Project opened in Eclipse, right-click -> Run As Eclipse Application) my written Constraints get checked and displayed as expected.
However, when i package my project as a (feature) plugin and export it it into a fresh Eclipse Installation I get the following exception after running the validation:
java.lang.NoSuchMethodError: geock.diagram.providers.MindmapValidationDecoratorProvider$StatusDecorator.getDecoration()Lorg/eclipse/gmf/runtime/diagram/ui/internal/services/decorator/Decoration;)
The plugins I installed are: GMF Runtime 1.4.2, Epsilon Core 0.9.0, and my projects plugin.
Adding the Epsilon Live Validation plugin, doesn't help.
At least the editor desn't crash anymore after commenting out the getDecoration() call.. but i still get the following exception in the error log:
org.eclipse.swt.SWTException: Failed to execute runnable (java.lang.NoSuchMethodError: mindmap.diagram.providers.MindmapValidationDecoratorProvider$StatusDecorator.getDecoration()Lorg/eclipse/gmf/runtime/diagram/ui/internal/services/decorator/Decoration;)
at org.eclipse.swt.SWT.error(SWT.java:4083)
at org.eclipse.swt.SWT.error(SWT.java:3998)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:137)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4041)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3660)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2640)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2604)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2438)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:671)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:664)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574)
at org.eclipse.equinox.launcher.Main.run(Main.java:1407)
Caused by: java.lang.NoSuchMethodError: mindmap.diagram.providers.MindmapValidationDecoratorProvider$StatusDecorator.getDecoration()Lorg/eclipse/gmf/runtime/diagram/ui/internal/services/decorator/Decoration;
at mindmap.diagram.providers.MindmapValidationDecoratorProvider$StatusDecorator.refresh(MindmapValidationDecoratorProvider.java:278)
at mindmap.diagram.providers.MindmapValidationDecoratorProvider$1$1.run(MindmapValidationDecoratorProvider.java:142)
at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.runExclusive(TransactionalEditingDomainImpl.java:328)
at mindmap.diagram.providers.MindmapValidationDecoratorProvider$1.run(MindmapValidationDecoratorProvider.java:134)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:134)
MindmapValidationDecoratorProvider.StatusDecorator
/**
* @generated
*/
public void refresh() {
...
// add decoration
if (editPart instanceof org.eclipse.gef.GraphicalEditPart) {
if (view instanceof Edge) {
setDecoration(getDecoratorTarget().addConnectionDecoration(getImage(severity), 50, true));
} else {
int margin = -1;
if (editPart instanceof org.eclipse.gef.GraphicalEditPart) {
margin = MapModeUtil.getMapMode(((org.eclipse.gef.GraphicalEditPart) editPart).getFigure()).DPtoLP(margin);
}
setDecoration(getDecoratorTarget().addShapeDecoration(getImage(severity),IDecoratorTarget.Direction.NORTH_EAST, margin, true));
}
if (getDecoration() != null) {
getDecoration().setToolTip(toolTip);
}
}
}
Help would be appreciated!
Cheers,
Christian
[Updated on: Mon, 14 March 2011 01:59] Report message to a moderator
|
|
|
|
Powered by
FUDForum. Page generated in 0.28379 seconds