Community
Participate
Working Groups
If you run manual test QFIX_4 a NoClassDefFoundError occurs when you press Ctrl+1 or click on the quick fix icon. This is serious because it also happens in QFIX_6 (a .java file in the Java editor). I haven't been able to get a proper stack trace but the three below may help: java.lang.NoClassDefFoundError: org.eclipse.ajdt.internal.ui.editor.quickfix.CorrectionMessages at java.lang.Class.initialize(Class.java:318) at org.eclipse.ajdt.internal.ui.editor.quickfix.AspectsProcessor.convertToAJProjectProposal(Unknown Source) at org.eclipse.ajdt.internal.ui.editor.quickfix.AJQuickFixProcessor.process(Unknown Source) at org.eclipse.ajdt.internal.ui.editor.quickfix.AJQuickFixProcessor.getCorrections(Unknown Source) at org.eclipse.jdt.internal.ui.text.correction.JavaCorrectionProcessor.collectCorrections(Unknown Source) at org.eclipse.jdt.internal.ui.text.correction.JavaCorrectionProcessor.processAnnotations(Unknown Source) at org.eclipse.jdt.internal.ui.text.correction.JavaCorrectionProcessor.computeCompletionProposals(Unknown Source) at org.eclipse.jface.text.contentassist.ContentAssistant.computeCompletionProposals(Unknown Source) at org.eclipse.jface.text.contentassist.CompletionProposalPopup.computeProposals(Unknown Source) at org.eclipse.jface.text.contentassist.CompletionProposalPopup.access$7(Unknown Source) at org.eclipse.jface.text.contentassist.CompletionProposalPopup$1.run(Unknown Source) at org.eclipse.swt.custom.BusyIndicator.showWhile(Unknown Source) at org.eclipse.jface.text.contentassist.CompletionProposalPopup.showProposals(Unknown Source) at org.eclipse.jface.text.contentassist.ContentAssistant.showPossibleCompletions(Unknown Source) at org.eclipse.jdt.internal.ui.text.correction.JavaCorrectionAssistant.showPossibleCompletions(Unknown Source) at org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitEditor$AdaptedSourceViewer.doOperation(Unknown Source) at org.eclipse.jdt.internal.ui.javaeditor.JavaSelectAnnotationRulerAction.run(Unknown Source) at org.eclipse.ui.texteditor.AbstractRulerActionDelegate.run(Unknown Source) at org.eclipse.ui.internal.PluginAction.runWithEvent(Unknown Source) at org.eclipse.ui.internal.PluginAction.run(Unknown Source) at org.eclipse.ui.texteditor.AbstractTextEditor$11.triggerAction(Unknown Source) at org.eclipse.ui.texteditor.AbstractTextEditor$11.mouseUp(Unknown Source) at org.eclipse.swt.widgets.TypedListener.handleEvent(Unknown Source) at org.eclipse.swt.widgets.EventTable.sendEvent(Unknown Source) at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source) at org.eclipse.swt.widgets.Display.runDeferredEvents(Unknown Source) at org.eclipse.swt.widgets.Display.readAndDispatch(Unknown Source) at org.eclipse.ui.internal.Workbench.runEventLoop(Unknown Source) at org.eclipse.ui.internal.Workbench.runUI(Unknown Source) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Unknown Source) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(Unknown Source) at org.eclipse.ui.internal.ide.IDEApplication.run(Unknown Source) at org.eclipse.core.internal.runtime.PlatformActivator$1.run(Unknown Source) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:273) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:129) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:85) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:58) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:60) at java.lang.reflect.Method.invoke(Method.java:391) at org.eclipse.core.launcher.Main.basicRun(Main.java:185) at org.eclipse.core.launcher.Main.run(Main.java:704) at org.eclipse.core.launcher.Main.main(Main.java:688) java.lang.NullPointerException at org.eclipse.jdt.internal.ui.text.correction.UnresolvedElementsSubProcessor.getTypeProposals(Unknown Source) at org.eclipse.ajdt.internal.ui.editor.quickfix.QuickFixProcessor.process(Unknown Source) at org.eclipse.ajdt.internal.ui.editor.quickfix.QuickFixProcessor.getCorrections(Unknown Source) at org.eclipse.ajdt.internal.ui.editor.quickfix.JavaCorrectionProcessor.collectCorrections(Unknown Source) at org.eclipse.ajdt.internal.ui.editor.quickfix.JavaCorrectionProcessor.processAnnotations(Unknown Source) at org.eclipse.ajdt.internal.ui.editor.quickfix.JavaCorrectionProcessor.computeCompletionProposals(Unknown Source) at org.eclipse.jface.text.contentassist.ContentAssistant.computeCompletionProposals(Unknown Source) at org.eclipse.jface.text.contentassist.CompletionProposalPopup.computeProposals(Unknown Source) at org.eclipse.jface.text.contentassist.CompletionProposalPopup.access$7(Unknown Source) at org.eclipse.jface.text.contentassist.CompletionProposalPopup$1.run(Unknown Source) at org.eclipse.swt.custom.BusyIndicator.showWhile(Unknown Source) at org.eclipse.jface.text.contentassist.CompletionProposalPopup.showProposals(Unknown Source) at org.eclipse.jface.text.contentassist.ContentAssistant.showPossibleCompletions(Unknown Source) at org.eclipse.ajdt.internal.ui.editor.quickfix.JavaCorrectionAssistant.showPossibleCompletions(Unknown Source) at org.eclipse.ajdt.internal.ui.editor.AspectJEditor$AJTextOperationTarget.doOperation(Unknown Source) at org.eclipse.ui.texteditor.TextOperationAction$1.run(Unknown Source) at org.eclipse.swt.custom.BusyIndicator.showWhile(Unknown Source) at org.eclipse.ui.texteditor.TextOperationAction.run(Unknown Source) at org.eclipse.jface.action.Action.runWithEvent(Unknown Source) at org.eclipse.ui.commands.ActionHandler.execute(Unknown Source) at org.eclipse.ui.internal.commands.Command.execute(Unknown Source) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.executeCommand(Unknown Source) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.press(Unknown Source) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.processKeyEvent(Unknown Source) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.filterKeySequenceBindings(Unknown Source) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.access$2(Unknown Source) at org.eclipse.ui.internal.keys.WorkbenchKeyboard$1.handleEvent(Unknown Source) at org.eclipse.swt.widgets.EventTable.sendEvent(Unknown Source) at org.eclipse.swt.widgets.Display.filterEvent(Unknown Source) at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source) at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source) at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source) at org.eclipse.swt.widgets.Control.sendKeyEvent(Unknown Source) at org.eclipse.swt.widgets.Control.sendKeyEvent(Unknown Source) at org.eclipse.swt.widgets.Control.WM_KEYDOWN(Unknown Source) at org.eclipse.swt.widgets.Control.windowProc(Unknown Source) at org.eclipse.swt.widgets.Display.windowProc(Unknown Source) at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method) at org.eclipse.swt.internal.win32.OS.DispatchMessage(Unknown Source) at org.eclipse.swt.widgets.Display.readAndDispatch(Unknown Source) at org.eclipse.ui.internal.Workbench.runEventLoop(Unknown Source) at org.eclipse.ui.internal.Workbench.runUI(Unknown Source) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Unknown Source) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(Unknown Source) at org.eclipse.ui.internal.ide.IDEApplication.run(Unknown Source) at org.eclipse.core.internal.runtime.PlatformActivator$1.run(Unknown Source) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:273) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:129) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:85) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:58) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:60) at java.lang.reflect.Method.invoke(Method.java:391) at org.eclipse.core.launcher.Main.basicRun(Main.java:185) at org.eclipse.core.launcher.Main.run(Main.java:704) at org.eclipse.core.launcher.Main.main(Main.java:688) org.eclipse.ajdt.internal.ui.editor.quickfix.JavaCorrectionProcessor.collectCorrections(JavaCorrectionProcessor.java:257)
The NPE from UnresolvedElementsSubProcessor is a duplicate of bug 76146, and is present in 1.2.0. There is not much we can do about this, as it is happening down in JDT. I've just put in a change to avoid reporting the error on the status line - the NPE is still written to the log. I performed the manual tests up to and including QFIX_6 and they all passed for me. Could you try them again and see if you get the NoClassDefFoundError again? Or are additional steps required to reproduce that? We should only be able to get into convertToAJProjectProposal if the project is not an AspectJ project, or it is closed, or if project.hasNature throws an exception.
I think this is a RAD problem. I double checked and I do still see the problem there, but not in Eclipse.
The NoClassDefFoundError/ExceptionInInitializer problem is now fixed for 1.2.1. It's not a problem on 1.3.0. The properties files was being missed from the build process. As noted above, the NPE is covered by another bug.