Do you have the Scala class on the inpath of the AspectJ project?
I am wondering if the Scala project is untampered you should be able to work
with it, and the aspect project can weave it's own classes

Mike


On Tue, May 4, 2010 at 5:07 PM, Andrew Eisenberg <[email protected]>wrote:

> Hi Miles and everyone,
>
> (moving this to ajdt-dev mailing list)
>
> I am just trying to get Scala and AJDT installed on 3.6.  The good
> news is that I was able to create a Scala project, a Scala class, an
> AspectJ project, and an Aspect that adds an ITD onto the scala class
> (and decompilation looks like the build was successful.  However, I
> cannot open the Scala editor (or the Scala class file editor).  I keep
> getting variants of the following exception.
>
> It could be that the weaving is not working properly, but more likely
> it seems that the plugin is referencing a method that no longer exists
> in M7.  (This is with the latest nightly build of Scala IDE.)
>
> java.lang.ExceptionInInitializerError
> at
> scala.tools.eclipse.ScalaSourceViewerConfiguration$$anonfun$getHyperlinkDetectors$1.apply(ScalaSourceViewerConfiguration.scala:71)
> at
> scala.tools.eclipse.ScalaSourceViewerConfiguration$$anonfun$getHyperlinkDetectors$1.apply(ScalaSourceViewerConfiguration.scala:70)
> at
> scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:203)
> at
> scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:203)
> at
> scala.collection.IndexedSeqOptimized$class.foreach(IndexedSeqOptimized.scala:35)
> at scala.collection.mutable.ArrayOps.foreach(ArrayOps.scala:35)
> at scala.collection.TraversableLike$class.map(TraversableLike.scala:203)
> at scala.collection.mutable.ArrayOps.map(ArrayOps.scala:35)
> at
> scala.tools.eclipse.ScalaSourceViewerConfiguration.getHyperlinkDetectors(ScalaSourceViewerConfiguration.scala:70)
> at
> org.eclipse.jface.text.source.SourceViewer.configure(SourceViewer.java:482)
> at
> org.eclipse.jdt.internal.ui.javaeditor.JavaSourceViewer.configure(JavaSourceViewer.java:223)
> at
> org.eclipse.ui.texteditor.AbstractTextEditor.createPartControl(AbstractTextEditor.java:3244)
> at
> org.eclipse.ui.texteditor.StatusTextEditor.createPartControl(StatusTextEditor.java:53)
> at
> org.eclipse.ui.texteditor.AbstractDecoratedTextEditor.createPartControl(AbstractDecoratedTextEditor.java:432)
> at
> org.eclipse.jdt.internal.ui.javaeditor.JavaEditor.createPartControl(JavaEditor.java:3104)
> at
> org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitEditor.createPartControl(CompilationUnitEditor.java:1475)
> at
> org.eclipse.ui.internal.EditorReference.createPartHelper(EditorReference.java:670)
> at
> org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:465)
> at
> org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:595)
> at
> org.eclipse.ui.internal.EditorReference.getEditor(EditorReference.java:289)
> at
> org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2863)
> at
> org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2768)
> at org.eclipse.ui.internal.WorkbenchPage.access$11(WorkbenchPage.java:2760)
> at org.eclipse.ui.internal.WorkbenchPage$10.run(WorkbenchPage.java:2711)
> at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
> at
> org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2707)
> at
> org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2691)
> at
> org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2682)
> at org.eclipse.ui.ide.IDE.openEditor(IDE.java:651)
> at org.eclipse.ui.ide.IDE.openEditor(IDE.java:610)
> at org.eclipse.ui.actions.OpenFileAction.openFile(OpenFileAction.java:99)
> at
> org.eclipse.ui.actions.OpenSystemEditorAction.run(OpenSystemEditorAction.java:99)
> at
> org.eclipse.ui.views.navigator.OpenActionGroup.runDefaultAction(OpenActionGroup.java:133)
> at
> org.eclipse.ui.views.navigator.MainActionGroup.runDefaultAction(MainActionGroup.java:330)
> at
> org.eclipse.ui.views.navigator.ResourceNavigator.handleOpen(ResourceNavigator.java:787)
> at
> org.eclipse.ui.views.navigator.ResourceNavigator$6.open(ResourceNavigator.java:499)
> at
> org.eclipse.ui.OpenAndLinkWithEditorHelper$InternalListener.open(OpenAndLinkWithEditorHelper.java:48)
> at
> org.eclipse.jface.viewers.StructuredViewer$2.run(StructuredViewer.java:845)
> at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
> at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
> at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
> at
> org.eclipse.jface.viewers.StructuredViewer.fireOpen(StructuredViewer.java:843)
> at
> org.eclipse.jface.viewers.StructuredViewer.handleOpen(StructuredViewer.java:1131)
> at
> org.eclipse.jface.viewers.StructuredViewer$6.handleOpen(StructuredViewer.java:1235)
> at org.eclipse.jface.util.OpenStrategy.fireOpenEvent(OpenStrategy.java:264)
> at org.eclipse.jface.util.OpenStrategy.access$2(OpenStrategy.java:258)
> at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:298)
> at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
> at org.eclipse.swt.widgets.Display.sendEvent(Display.java:3734)
> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1335)
> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1358)
> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1343)
> at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:1155)
> at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3594)
> at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3250)
> at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2601)
> at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2565)
> at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2399)
> at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:669)
> at
> org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
> at
> org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:662)
> 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(NativeMethodAccessorImpl.java:39)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:592)
> 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.NoSuchMethodException:
>
> org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.addTextHover(org.eclipse.jface.text.ITextHover)
> at java.lang.Class.getDeclaredMethod(Class.java:1909)
> at
> scala.tools.eclipse.util.ReflectionUtils$$anonfun$getDeclaredMethod$1.apply(ReflectionUtils.scala:42)
> at
> scala.tools.eclipse.util.ReflectionUtils$$anonfun$getDeclaredMethod$1.apply(ReflectionUtils.scala:41)
> at
> scala.tools.eclipse.util.ReflectionUtils$$anon$1.run(ReflectionUtils.scala:57)
> at java.security.AccessController.doPrivileged(Native Method)
> at
> scala.tools.eclipse.util.ReflectionUtils$class.privileged(ReflectionUtils.scala:56)
> at
> scala.tools.eclipse.ScalaSourceViewerConfigurationUtils$.privileged(ScalaSourceViewerConfiguration.scala:126)
> at
> scala.tools.eclipse.util.ReflectionUtils$class.getDeclaredMethod(ReflectionUtils.scala:41)
> at
> scala.tools.eclipse.ScalaSourceViewerConfigurationUtils$.getDeclaredMethod(ScalaSourceViewerConfiguration.scala:126)
> at
> scala.tools.eclipse.ScalaSourceViewerConfigurationUtils$.<init>(ScalaSourceViewerConfiguration.scala:128)
> at
> scala.tools.eclipse.ScalaSourceViewerConfigurationUtils$.<clinit>(ScalaSourceViewerConfiguration.scala)
> ... 75 more
>
>
> On Sat, Apr 24, 2010 at 1:03 PM, Miles Sabin <[email protected]> wrote:
> > On Fri, Apr 23, 2010 at 6:33 PM, Andrew Eisenberg <[email protected]>
> wrote:
> >> There might be something that AJDT can do so that it doesn't try to
> >> process non-Java, non-AJ files.  And, really, AJDT should bot be
> >> trying to touch your files if it is outside of an AJ project, so I'll
> >> have to see what's going on here.
> >>
> >> Does you Scala project have an AJNature attached to it by any chance?
> >
> > In my test the Scala project didn't have an AJNature: it was simply
> > that the Scala class in question had pointcuts specified on it by the
> > separate AspectJ project.
> >
> > Cheers,
> >
> >
> > Miles
> >
> > --
> > Miles Sabin
> > tel: +44 (0)7813 944 528
> > skype:  milessabin
> > http://www.chuusai.com/
> > http://twitter.com/milessabin
> >
> _______________________________________________
> aspectj-users mailing list
> [email protected]
> https://dev.eclipse.org/mailman/listinfo/aspectj-users
>
_______________________________________________
aspectj-users mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/aspectj-users

Reply via email to