NPE in SourceTypeElementInfo.getEnclosingType

50 views
Skip to first unread message

Dan Gravell

unread,
Jun 27, 2018, 10:35:46 AM6/27/18
to Scala IDE User
Today, all work has ground to a halt because I seem to be getting a recurring NPE in SourceTypeElementInfo.getEnclosingType. When I open a Java source file, I get the following stack trace:

java.lang.NullPointerException
at org.eclipse.jdt.internal.core.SourceTypeElementInfo.getEnclosingType(SourceTypeElementInfo.java:90)
at org.eclipse.jdt.internal.compiler.parser.SourceTypeConverter.convert(SourceTypeConverter.java:453)
at org.eclipse.jdt.internal.compiler.parser.SourceTypeConverter.convert(SourceTypeConverter.java:517)
at org.eclipse.jdt.internal.compiler.parser.SourceTypeConverter.ajc$privMethod$scala_tools_eclipse_contribution_weaving_jdt_cfprovider_ClassFileProviderAspect$org_eclipse_jdt_internal_compiler_parser_SourceTypeConverter$convert(SourceTypeConverter.java:1)
at scala.tools.eclipse.contribution.weaving.jdt.cfprovider.ClassFileProviderAspect.ajc$around$scala_tools_eclipse_contribution_weaving_jdt_cfprovider_ClassFileProviderAspect$11$998f7f7a(ClassFileProviderAspect.aj:308)
at org.eclipse.jdt.internal.compiler.parser.SourceTypeConverter.convert(SourceTypeConverter.java:110)
at org.eclipse.jdt.internal.compiler.parser.SourceTypeConverter.buildCompilationUnit(SourceTypeConverter.java:96)
at org.eclipse.jdt.internal.codeassist.impl.Engine.accept(Engine.java:125)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:333)
at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage(PackageBinding.java:257)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.findImport(CompilationUnitScope.java:527)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.findSingleImport(CompilationUnitScope.java:586)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.faultInImports(CompilationUnitScope.java:435)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.faultInTypes(CompilationUnitScope.java:501)
at org.eclipse.jdt.internal.codeassist.CompletionEngine.complete(CompletionEngine.java:2211)
at org.eclipse.jdt.internal.core.Openable.codeComplete(Openable.java:131)
at org.eclipse.jdt.internal.core.CompilationUnit.codeComplete(CompilationUnit.java:358)
at org.eclipse.jdt.internal.core.CompilationUnit.codeComplete(CompilationUnit.java:352)
at org.eclipse.jdt.internal.core.CompilationUnit.codeComplete(CompilationUnit.java:340)
at org.eclipse.jdt.internal.ui.text.correction.SimilarElementsRequestor.process(SimilarElementsRequestor.java:144)
at org.eclipse.jdt.internal.ui.text.correction.SimilarElementsRequestor.findSimilarElement(SimilarElementsRequestor.java:91)
at org.eclipse.jdt.internal.ui.text.correction.UnresolvedElementsSubProcessor.addSimilarTypeProposals(UnresolvedElementsSubProcessor.java:772)
at org.eclipse.jdt.internal.ui.text.correction.UnresolvedElementsSubProcessor.getVariableProposals(UnresolvedElementsSubProcessor.java:280)
at org.eclipse.jdt.internal.ui.text.correction.QuickFixProcessor.process(QuickFixProcessor.java:367)
at org.eclipse.jdt.internal.ui.text.correction.QuickFixProcessor.getCorrections_aroundBody0(QuickFixProcessor.java:322)
at org.eclipse.jdt.internal.ui.text.correction.QuickFixProcessor$AjcClosure1.run(QuickFixProcessor.java:1)
at scala.tools.eclipse.contribution.weaving.jdt.ui.javaeditor.ScalaEditorPreferencesAspect.ajc$around$scala_tools_eclipse_contribution_weaving_jdt_ui_javaeditor_ScalaEditorPreferencesAspect$1$494803faproceed(ScalaEditorPreferencesAspect.aj:29)
at scala.tools.eclipse.contribution.weaving.jdt.ui.javaeditor.ScalaEditorPreferencesAspect.ajc$around$scala_tools_eclipse_contribution_weaving_jdt_ui_javaeditor_ScalaEditorPreferencesAspect$1$494803fa(ScalaEditorPreferencesAspect.aj:33)
at org.eclipse.jdt.internal.ui.text.correction.QuickFixProcessor.getCorrections(QuickFixProcessor.java:312)
at org.eclipse.jdt.internal.ui.text.correction.JavaCorrectionProcessor$SafeCorrectionCollector.safeRun(JavaCorrectionProcessor.java:384)
at org.eclipse.jdt.internal.ui.text.correction.JavaCorrectionProcessor$SafeCorrectionProcessorAccess.run(JavaCorrectionProcessor.java:344)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.jdt.internal.ui.text.correction.JavaCorrectionProcessor$SafeCorrectionProcessorAccess.process(JavaCorrectionProcessor.java:339)
at org.eclipse.jdt.internal.ui.text.correction.JavaCorrectionProcessor.collectCorrections(JavaCorrectionProcessor.java:474)
at org.eclipse.jdt.internal.ui.text.correction.JavaCorrectionProcessor.collectProposals(JavaCorrectionProcessor.java:284)
at org.eclipse.jdt.internal.ui.text.correction.JavaCorrectionProcessor.computeQuickAssistProposals(JavaCorrectionProcessor.java:246)
at org.eclipse.jface.text.quickassist.QuickAssistAssistant$ContentAssistProcessor.computeCompletionProposals(QuickAssistAssistant.java:68)
at org.eclipse.jface.text.contentassist.ContentAssistant$3.run(ContentAssistant.java:2007)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.jface.text.contentassist.ContentAssistant.computeCompletionProposals(ContentAssistant.java:2004)
at org.eclipse.jface.text.contentassist.CompletionProposalPopup.computeProposals(CompletionProposalPopup.java:560)
at org.eclipse.jface.text.contentassist.CompletionProposalPopup.access$7(CompletionProposalPopup.java:555)
at org.eclipse.jface.text.contentassist.CompletionProposalPopup$2.run(CompletionProposalPopup.java:489)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at org.eclipse.jface.text.contentassist.CompletionProposalPopup.showProposals(CompletionProposalPopup.java:482)
at org.eclipse.jface.text.contentassist.ContentAssistant.showPossibleCompletions(ContentAssistant.java:1823)
at org.eclipse.jface.text.quickassist.QuickAssistAssistant.showPossibleQuickAssists(QuickAssistAssistant.java:109)
at org.eclipse.jdt.internal.ui.text.correction.JavaCorrectionAssistant.showPossibleQuickAssists(JavaCorrectionAssistant.java:198)
at org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitEditor$AdaptedSourceViewer.doOperation(CompilationUnitEditor.java:196)
at org.eclipse.ui.texteditor.TextOperationAction$1.run(TextOperationAction.java:130)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at org.eclipse.ui.texteditor.TextOperationAction.run(TextOperationAction.java:127)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:473)
at org.eclipse.jface.commands.ActionHandler.execute(ActionHandler.java:118)
at org.eclipse.ui.internal.handlers.E4HandlerProxy.execute(E4HandlerProxy.java:92)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:55)
at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:305)
at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:239)
at org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:132)
at org.eclipse.e4.core.commands.internal.HandlerServiceHandler.execute(HandlerServiceHandler.java:152)
at org.eclipse.core.commands.Command.executeWithChecks(Command.java:494)
at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:487)
at org.eclipse.e4.core.commands.internal.HandlerServiceImpl.executeHandler(HandlerServiceImpl.java:210)
at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.executeCommand(KeyBindingDispatcher.java:287)
at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.press(KeyBindingDispatcher.java:527)
at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.processKeyEvent(KeyBindingDispatcher.java:577)
at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.filterKeySequenceBindings(KeyBindingDispatcher.java:385)
at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.access$0(KeyBindingDispatcher.java:331)
at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher$KeyDownFilter.handleEvent(KeyBindingDispatcher.java:88)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:86)
at org.eclipse.swt.widgets.Display.filterEvent(Display.java:1577)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1347)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1374)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1357)
at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1386)
at org.eclipse.swt.widgets.Widget.gtk_key_press_event(Widget.java:768)
at org.eclipse.swt.widgets.Control.gtk_key_press_event(Control.java:3527)
at org.eclipse.swt.widgets.Composite.gtk_key_press_event(Composite.java:785)
at org.eclipse.swt.widgets.Widget.windowProc(Widget.java:1976)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:6169)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:5528)
at org.eclipse.swt.internal.gtk.OS._gtk_main_do_event(Native Method)
at org.eclipse.swt.internal.gtk.OS.gtk_main_do_event(OS.java:9253)
at org.eclipse.swt.widgets.Display.eventProc(Display.java:1252)
at org.eclipse.swt.internal.gtk.OS._g_main_context_iteration(Native Method)
at org.eclipse.swt.internal.gtk.OS.g_main_context_iteration(OS.java:2112)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4105)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1150)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1039)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:153)
at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:680)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:594)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:148)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:151)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:388)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:243)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:653)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:590)
at org.eclipse.equinox.launcher.Main.run(Main.java:1499)
at org.eclipse.equinox.launcher.Main.main(Main.java:1472)

This is repeated a few times from different sources. Scala files are currently working ok. 

Everything was working ok yesterday.

This occurs on every Java file.

Tried clearing Scala IDE metadata from .metadata but that didn't work.

Any ideas?

Dan

Dan Gravell

unread,
Jun 27, 2018, 10:36:51 AM6/27/18
to Scala IDE User
I forgot to say: version 4.7.1.v-2_12-201711300949-[...]

Dan Gravell

unread,
Jun 27, 2018, 11:11:01 AM6/27/18
to Scala IDE User
Hmmm, it appears this fixed it:

1) Disable auto completion in Java Content Assist preferences
2) Fix all compile errors (!)

Dan

Dan Gravell

unread,
Jun 27, 2018, 12:01:20 PM6/27/18
to Scala IDE User
I re-enabled auto completion and for a while it worked... but now is not working again. No compile errors in the workspace.

The errors show each time I save a Java file, press a "." to invoke content assist, or do some other things.

I re-ran from a console and there are no errors that show when the error log is written to, but at startup there is:

[org.scala-ide.sdt.aspects] error can't determine modifiers of missing type org.eclipse.pde.internal.ui.wizards.imports.PluginImportHelper
when weaving type scala.tools.eclipse.contribution.weaving.jdt.ScalaJDTWeavingPlugin
when weaving classes 
when weaving 
 [Xlint:cantFindType]

I wondered if this is pertinent given the mention of weaving in the stack trace in the first post.

Dan

Dan Gravell

unread,
Jun 28, 2018, 11:21:04 AM6/28/18
to Scala IDE User
Working ok today... *shrugs*

I did restart several times yesterday also.

Dan

Dan Gravell

unread,
Jul 3, 2018, 10:45:05 AM7/3/18
to Scala IDE User
It's back, I can't run any tests.

Anybody have any idea on some way to "reset" this?

I've tried -clean and clearing out .metadata/org.scala* and restarting.

Dan

Dan Gravell

unread,
Jul 4, 2018, 10:08:27 AM7/4/18
to Scala IDE User

Arnaud

unread,
Jul 5, 2018, 5:33:33 AM7/5/18
to Scala IDE User
Just got the same error today during auto-completion (ctrl space) on _java_ source code (in a mixed java/scala project)

java.lang.NullPointerException
at org.eclipse.jdt.internal.core.SourceTypeElementInfo.getEnclosingType(SourceTypeElementInfo.java:90)
at org.eclipse.jdt.internal.compiler.parser.SourceTypeConverter.convert(SourceTypeConverter.java:453)
at org.eclipse.jdt.internal.compiler.parser.SourceTypeConverter.convert(SourceTypeConverter.java:517)
at org.eclipse.jdt.internal.compiler.parser.SourceTypeConverter.ajc$privMethod$scala_tools_eclipse_contribution_weaving_jdt_cfprovider_ClassFileProviderAspect$org_eclipse_jdt_internal_compiler_parser_SourceTypeConverter$convert(SourceTypeConverter.java:1)
at scala.tools.eclipse.contribution.weaving.jdt.cfprovider.ClassFileProviderAspect.ajc$around$scala_tools_eclipse_contribution_weaving_jdt_cfprovider_ClassFileProviderAspect$11$998f7f7a(ClassFileProviderAspect.aj:308)
at org.eclipse.jdt.internal.compiler.parser.SourceTypeConverter.convert(SourceTypeConverter.java:110)
at org.eclipse.jdt.internal.compiler.parser.SourceTypeConverter.buildCompilationUnit(SourceTypeConverter.java:96)
at org.eclipse.jdt.internal.codeassist.impl.Engine.accept(Engine.java:125)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:333)
at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage(PackageBinding.java:257)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.findImport(CompilationUnitScope.java:527)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.findSingleImport(CompilationUnitScope.java:586)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.faultInImports(CompilationUnitScope.java:435)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.faultInTypes(CompilationUnitScope.java:501)
at org.eclipse.jdt.internal.codeassist.SelectionEngine.select(SelectionEngine.java:1052)
at org.eclipse.jdt.internal.core.Openable.codeSelect(Openable.java:163)
at org.eclipse.jdt.internal.core.CompilationUnit.codeSelect(CompilationUnit.java:378)
at org.eclipse.jdt.internal.core.CompilationUnit.codeSelect(CompilationUnit.java:372)
at org.eclipse.jdt.internal.ui.javaeditor.JavaElementHyperlinkDetector.detectHyperlinks(JavaElementHyperlinkDetector.java:103)
at org.eclipse.ui.texteditor.HyperlinkDetectorRegistry$HyperlinkDetectorDelegate.detectHyperlinks(HyperlinkDetectorRegistry.java:78)
at org.eclipse.jface.text.hyperlink.HyperlinkManager.findHyperlinks(HyperlinkManager.java:286)
at org.eclipse.jface.text.hyperlink.HyperlinkManager.findHyperlinks(HyperlinkManager.java:259)
at org.eclipse.jface.text.hyperlink.HyperlinkManager.mouseMove(HyperlinkManager.java:454)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:213)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:86)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4258)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1502)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1525)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1510)
at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:1314)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4082)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3699)
Reply all
Reply to author
Forward
0 new messages