-
Notifications
You must be signed in to change notification settings - Fork 27
Description
Hi, I am struggling with running the tutorial. I downloaded the finish
source codes (https://github.com/ftsrg/gamma/tree/master/tutorial/hu.bme.mit.gamma.tutorial.finish) and followed the instructions in tutorial README to compile the project. Compiling interfaces and Generating artefacts work as expected. However, when trying to run Generate Statechart Java Code
(Step https://github.com/ftsrg/gamma/blob/master/tutorial/README.md#code-generation), I get java ClassCastException. The details of the exception are provided below.
I installed Eclipse and Gamma based on the instructions provided here.
I am using macOS 13.7.6, Eclipse 2023-09 (4.29.0), Gamma 2.11.0, java 17.0.15
Could you please help me with the investigation of this problem?
Thank you in advance.
java.lang.ClassCastException: class hu.bme.mit.gamma.statechart.composite.impl.SynchronousCompositeComponentImpl cannot be cast to class hu.bme.mit.gamma.statechart.statechart.StatechartDefinition (hu.bme.mit.gamma.statechart.composite.impl.SynchronousCompositeComponentImpl and hu.bme.mit.gamma.statechart.statechart.StatechartDefinition are in unnamed module of loader org.eclipse.osgi.internal.loader.EquinoxClassLoader @3010dccb)
class hu.bme.mit.gamma.statechart.composite.impl.SynchronousCompositeComponentImpl cannot be cast to class hu.bme.mit.gamma.statechart.statechart.StatechartDefinition (hu.bme.mit.gamma.statechart.composite.impl.SynchronousCompositeComponentImpl and hu.bme.mit.gamma.statechart.statechart.StatechartDefinition are in unnamed module of loader org.eclipse.osgi.internal.loader.EquinoxClassLoader @3010dccb)
hu.bme.mit.gamma.statechart.lowlevel.transformation.commandhandler.CommandHandler.execute(CommandHandler.java:72)
org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:283)
org.eclipse.ui.internal.handlers.E4HandlerProxy.execute(E4HandlerProxy.java:97)
jdk.internal.reflect.GeneratedMethodAccessor216.invoke(Unknown Source)
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.base/java.lang.reflect.Method.invoke(Method.java:569)
org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:58)
org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:300)
org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:234)
org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:173)
org.eclipse.e4.core.commands.internal.HandlerServiceHandler.execute(HandlerServiceHandler.java:156)
org.eclipse.core.commands.Command.executeWithChecks(Command.java:488)
org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:485)
org.eclipse.e4.core.commands.internal.HandlerServiceImpl.executeHandler(HandlerServiceImpl.java:213)
org.eclipse.e4.ui.workbench.renderers.swt.HandledContributionItem.executeItem(HandledContributionItem.java:438)
org.eclipse.e4.ui.workbench.renderers.swt.AbstractContributionItem.handleWidgetSelection(AbstractContributionItem.java:449)
org.eclipse.e4.ui.workbench.renderers.swt.AbstractContributionItem.lambda$2(AbstractContributionItem.java:475)
org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
org.eclipse.swt.widgets.Display.sendEvent(Display.java:4646)
org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1524)
org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1547)
org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1532)
org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:1325)
org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4413)
org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3989)
org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155)
org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:342)
org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046)
org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155)
org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:645)
org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:342)
org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:552)
org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171)
org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152)
org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136)
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402)
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.base/java.lang.reflect.Method.invoke(Method.java:569)
org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:651)
org.eclipse.equinox.launcher.Main.basicRun(Main.java:588)
org.eclipse.equinox.launcher.Main.run(Main.java:1459)