Bug 353896 - exceptions during ajdt build when files get deleted in the process
Summary: exceptions during ajdt build when files get deleted in the process
Status: NEW
Alias: None
Product: AspectJ
Classification: Tools
Component: IDE (show other bugs)
Version: 1.6.12   Edit
Hardware: PC All
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: aspectj inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-08-04 10:33 EDT by Missing name CLA
Modified: 2011-08-25 10:08 EDT (History)
1 user (show)

See Also:


Attachments
the error dialog (48.64 KB, image/jpeg)
2011-08-04 10:33 EDT, Missing name CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Missing name CLA 2011-08-04 10:33:06 EDT
This bug occurs periodically when I am running my ant script which generates the .classpath for the eclipse project:

---------------------------------
java.lang.IllegalStateException
at org.aspectj.weaver.ResolvedMemberImpl.parameterizedWith(ResolvedMemberImpl.java:727)
at org.aspectj.weaver.ResolvedMemberImpl.parameterizedWith(ResolvedMemberImpl.java:710)
at org.aspectj.weaver.ReferenceType.getDeclaredMethods(ReferenceType.java:768)
at org.aspectj.weaver.ResolvedType$MethodGetter.get(ResolvedType.java:228)
at org.aspectj.weaver.ResolvedType$MethodGetter.get(ResolvedType.java:226)
at ... orService, java.util.concurrent.Callable) throws java.lang.InterruptedException

end final class de.invesdwin.gemeinsam.concurrent.WrappedCallable
---------------------------------

It would be nice if AJDT would fail silently in that case instead of showing that annoying popup all the time which even stacks onto more instances of it. Maybe you could just add it to the normal error outlining of the other compilation problems which are visible in the "Problems" tab in eclipse.

I can work around this problem by disabled automatic project builds during my ant build, but remembering to this always is kind of hard. :) Having the popup not show up would be the desired option.
Comment 1 Missing name CLA 2011-08-04 10:33:55 EDT
Created attachment 200920 [details]
the error dialog
Comment 2 Andrew Clement CLA 2011-08-04 11:11:56 EDT
I'm afraid that error is too serious to be categorized as a regular problem.  It means a fundamental assumption in the compiler has failed and you can't really trust the compiled output.  Are you perhaps able to share the project with me that exhibits this problem?
Comment 3 Missing name CLA 2011-08-09 13:14:00 EDT
The project is proprietary, so I am unable to share it.

Until now I was not able to reliably reproduce the issue in a small sample.
Comment 4 Missing name CLA 2011-08-09 13:23:00 EDT
I not got different exception after removing the aspectjr.jar container from my classpath and relying on the aspectjrt.jar that is pulled in by dependencies:
org.aspectj.org.eclipse.jdt.internal.compiler.problem.AbortCompilation
at org.aspectj.org.eclipse.jdt.internal.compiler.problem.ProblemHandler.handle(ProblemHandler.java:97)
at org.aspectj.ajdt.internal.compiler.problem.AjProblemReporter.handle(AjProblemReporter.java:306)
at org.aspectj.org.eclipse.jdt.internal.compiler.problem.ProblemHandler.handle(ProblemHandler.java:154)
at org.aspectj.org.eclipse.jdt.internal.compiler.problem.Problem ... t call() throws java.lang.Exception

end public class de.invesdwin.finanzdaten.sammler.internal.tasks.persistieren.aktie.AktienPersistierenCpuTask

This sounds like compilation got aborted. This would be a normal occurence for me, because my build  regenerates the .classpath files of multiple modules (eclipse projects). While a build is triggered by this and currently ruinning, another build might be triggered because of a new .classpath being changed. The old build gets aborted and a new one gets starter over.

The only annoyance there is the errordialog popping up by AJDT.
Comment 5 Missing name CLA 2011-08-09 13:23:38 EDT
I now got*
Comment 6 Missing name CLA 2011-08-12 17:40:51 EDT
Here another exception that occurs sometimes:

Errors occurred during the build.
Errors running builder 'AspectJ Builder' on project '03_de.invesdwin.gemeinsam.persistenz'.
Problems encountered while copying resources.
Resource '/03_de.invesdwin.gemeinsam.persistenz/gen/META-INF/MANIFEST.MF' does not exist.
Problems encountered while copying resources.
Resource '/03_de.invesdwin.gemeinsam.persistenz/gen/META-INF/MANIFEST.MF' does not exist.

That is caused by my build script cleaning the gen folder during an ant build.
Comment 7 Missing name CLA 2011-08-13 05:13:52 EDT
Maybe AJDT can't handle java files or resources being delete during an eclipse build? The expected behaviour would be to fail silently or skit the file, just as eclipse itself does it.
Comment 8 Andrew Clement CLA 2011-08-13 12:01:03 EDT
we seem to have too many issues in this one bug now.  The original illegalstate, your abortexception and your resource copying.

1) The most serious is the illegalstate, which I'd like to fix but have no idea what is causing it without being able to recreate.

2) Aborts are normal if things are changing during a build and just indicate that what it was doing is out of date and so we should stop and redo it.  They shouldn't trigger a popup, I've never seen it do that. I'd need a test project that showed it happening in order to sort it out. 

3)  for the resource copying, do you see an exception in the eclipse error log to accompany the 'problem' messages?

Are you running your ant builds at the same time as eclipse is building or are you running your ant builds in between eclipse builds?
Comment 9 Missing name CLA 2011-08-13 12:15:14 EDT
Each exception is shown in the error dialog I posted a screenshot of.

I still was not able to reproduce this in a small example and the bug only occurs sometimes in my own workspace. Currently I can only repdoduce the MANIFEST.MF error dialog.
Comment 10 Missing name CLA 2011-08-13 12:21:30 EDT
I could give you VNC access to my desktop for you to be able to see the error dialog and maybe debug it.

In what timezone are you? Maybe we could set up VNC access + instant messaging? I'm from germany and thus have the GMT+2 timezone.
Comment 11 Missing name CLA 2011-08-13 12:29:13 EDT
Here is the error log for the MANIFEST.MF error:

!ENTRY org.eclipse.core.resources 4 2 2011-08-11 22:25:28.715
!MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.core.resources".
!STACK 1
org.eclipse.core.internal.resources.ResourceException: Problems encountered while copying resources.
	at org.eclipse.core.internal.localstore.FileSystemResourceManager.copy(FileSystemResourceManager.java:232)
	at org.eclipse.core.internal.resources.Resource.copy(Resource.java:548)
	at org.eclipse.ajdt.core.builder.AJBuilder.copyResources(AJBuilder.java:1197)
	at org.eclipse.ajdt.core.builder.AJBuilder.copyResources(AJBuilder.java:1112)
	at org.eclipse.ajdt.core.builder.AJBuilder.copyResources(AJBuilder.java:1052)
	at org.eclipse.ajdt.core.builder.AJBuilder.build(AJBuilder.java:179)
	at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:629)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:172)
	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:203)
	at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:255)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:258)
	at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:311)
	at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:343)
	at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:144)
	at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:242)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Contains: Resource '/03_de.invesdwin.finanzdaten.waehrung.contract/gen/META-INF/MANIFEST.MF' does not exist.
!SUBENTRY 1 org.eclipse.core.resources 4 1 2011-08-11 22:25:28.715
!MESSAGE Problems encountered while copying resources.
!SUBENTRY 2 org.eclipse.core.resources 4 368 2011-08-11 22:25:28.715
!MESSAGE Resource '/03_de.invesdwin.finanzdaten.waehrung.contract/gen/META-INF/MANIFEST.MF' does not exist.
!SUBENTRY 1 org.eclipse.core.resources 4 368 2011-08-11 22:25:28.715
!MESSAGE Resource '/03_de.invesdwin.finanzdaten.waehrung.contract/gen/META-INF/MANIFEST.MF' does not exist.
Comment 12 Missing name CLA 2011-08-13 12:31:04 EDT
this is for the abortcompilation error:

!ENTRY org.eclipse.ui 4 0 2011-08-09 22:11:06.182
!MESSAGE Unhandled event loop exception
!STACK 0
org.eclipse.jdt.internal.compiler.problem.AbortCompilation: 
	at org.eclipse.jdt.internal.core.CancelableNameEnvironment.checkCanceled(CancelableNameEnvironment.java:34)
	at org.eclipse.jdt.internal.core.CancelableNameEnvironment.findType(CancelableNameEnvironment.java:44)
	at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:131)
	at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage(PackageBinding.java:183)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.getTypeOrPackage(Scope.java:2636)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.getType(Scope.java:2348)
	at org.eclipse.jdt.internal.compiler.ast.SingleTypeReference.getTypeBinding(SingleTypeReference.java:44)
	at org.eclipse.jdt.internal.compiler.ast.TypeReference.internalResolveType(TypeReference.java:132)
	at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveType(TypeReference.java:212)
	at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveType(TypeReference.java:208)
	at org.eclipse.jdt.internal.compiler.ast.Annotation.resolveType(Annotation.java:233)
	at org.eclipse.jdt.internal.compiler.ast.ASTNode.resolveAnnotations(ASTNode.java:637)
	at org.eclipse.jdt.internal.compiler.lookup.MethodBinding.getAnnotationTagBits(MethodBinding.java:526)
	at org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding.resolveTypesFor(SourceTypeBinding.java:1307)
	at org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding.methods(SourceTypeBinding.java:1143)
	at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.methods(ParameterizedTypeBinding.java:784)
	at org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.availableMethods(ReferenceBinding.java:173)
	at org.eclipse.jdt.internal.codeassist.InternalExtendedCompletionContext.searchVisibleMethods(InternalExtendedCompletionContext.java:643)
	at org.eclipse.jdt.internal.codeassist.InternalExtendedCompletionContext.searchVisibleVariablesAndMethods(InternalExtendedCompletionContext.java:780)
	at org.eclipse.jdt.internal.codeassist.InternalExtendedCompletionContext.computeVisibleElementBindings(InternalExtendedCompletionContext.java:174)
	at org.eclipse.jdt.internal.codeassist.InternalExtendedCompletionContext.getVisibleElements(InternalExtendedCompletionContext.java:331)
	at org.eclipse.jdt.internal.codeassist.InternalCompletionContext.getVisibleElements(InternalCompletionContext.java:318)
	at org.eclipse.jdt.internal.ui.text.java.ParameterGuessingProposal.getAssignableElements(ParameterGuessingProposal.java:110)
	at org.eclipse.jdt.internal.ui.text.java.ParameterGuessingProposal.guessParameters(ParameterGuessingProposal.java:290)
	at org.eclipse.jdt.internal.ui.text.java.ParameterGuessingProposal.computeGuessingCompletion(ParameterGuessingProposal.java:225)
	at org.eclipse.jdt.internal.ui.text.java.ParameterGuessingProposal.computeReplacementString(ParameterGuessingProposal.java:191)
	at org.eclipse.jdt.internal.ui.text.java.LazyJavaCompletionProposal.getReplacementString(LazyJavaCompletionProposal.java:308)
	at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.apply(AbstractJavaCompletionProposal.java:364)
	at org.eclipse.jdt.internal.ui.text.java.JavaMethodCompletionProposal.apply(JavaMethodCompletionProposal.java:55)
	at org.eclipse.jdt.internal.ui.text.java.ParameterGuessingProposal.apply(ParameterGuessingProposal.java:120)
	at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.apply(AbstractJavaCompletionProposal.java:477)
	at org.eclipse.jface.text.contentassist.CompletionProposalPopup.insertProposal(CompletionProposalPopup.java:928)
	at org.eclipse.jface.text.contentassist.CompletionProposalPopup.insertSelectedProposalWithMask(CompletionProposalPopup.java:879)
	at org.eclipse.jface.text.contentassist.CompletionProposalPopup.verifyKey(CompletionProposalPopup.java:1305)
	at org.eclipse.jface.text.contentassist.ContentAssistant$InternalListener.verifyKey(ContentAssistant.java:806)
	at org.eclipse.jface.text.TextViewer$VerifyKeyListenersManager.verifyKey(TextViewer.java:489)
	at org.eclipse.swt.custom.StyledTextListener.handleEvent(StyledTextListener.java:65)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1258)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1282)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1267)
	at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:1061)
	at org.eclipse.swt.custom.StyledText.handleKeyDown(StyledText.java:5957)
	at org.eclipse.swt.custom.StyledText$7.handleEvent(StyledText.java:5656)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1258)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1282)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1267)
	at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1294)
	at org.eclipse.swt.widgets.Widget.gtk_key_press_event(Widget.java:730)
	at org.eclipse.swt.widgets.Control.gtk_key_press_event(Control.java:2841)
	at org.eclipse.swt.widgets.Composite.gtk_key_press_event(Composite.java:734)
	at org.eclipse.swt.widgets.Widget.windowProc(Widget.java:1743)
	at org.eclipse.swt.widgets.Control.windowProc(Control.java:4796)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:4360)
	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:8189)
	at org.eclipse.swt.widgets.Display.eventProc(Display.java:1238)
	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:2237)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3159)
	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(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:620)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:575)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1408)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1384)
Comment 13 Missing name CLA 2011-08-13 12:34:53 EDT
I couldn't find an error log for the illegalstate on this computer. But I think it didn't even occur on linux yet. Also I might have fixed it by removing duplicates of aspectj.jar from the generated classpath. Maybe there were two different versions of it which caused the error.
Comment 14 Andrew Clement CLA 2011-08-16 19:17:47 EDT
Slowly progressing these things.  The resource copying issue: "Problems encountered while copying resources." has now been fixed (in dev build shortly).

The Abort thing - not yet sure what we can do for that.  Without being able to debug it here, will be tricky to resolve since the stack trace does not include any frames from our codebase.
Comment 15 Missing name CLA 2011-08-25 10:05:02 EDT
Here is another exception that just occured:

-- Message dialog:

java.lang.ArrayIndexOutOfBoundsException
at org.aspectj.org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.bindArguments(AbstractMethodDeclaration.java:94)
at org.aspectj.org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolve(AbstractMethodDeclaration.java:400)
at org.aspectj.org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1109)
at org.aspectj.org.eclipse.jdt.internal.compi ... ob.run(AutoBuildJob.java:242)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

Compile error: ArrayIndexOutOfBoundsException thrown: 0

----------------------------------------------------------------------------

-- Eclipse error log:

!ENTRY org.eclipse.ajdt.ui 4 0 2011-08-25 15:59:22.826
!MESSAGE trouble in: 
public class de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository extends de.invesdwin.gemeinsam.persistenz.api.ARepository:
  private de.invesdwin.finanzdaten.persistenz.unternehmen.IUnternehmenLoeschenHook[] unternehmenLoeschenHooks [RuntimeVisibleAnnotations]
  private de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenDao unternehmenDao [RuntimeVisibleAnnotations]
  private de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.JahreszusammenfassungDao jahreszusammenfassungDao [RuntimeVisibleAnnotations]
  private de.invesdwin.finanzdaten.persistenz.aktie.AktieDao aktieDao [RuntimeVisibleAnnotations]
  private de.invesdwin.finanzdaten.persistenz.aktie.AktieRepository aktieRepo [RuntimeVisibleAnnotations]
  private de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.abschluss.AbschlussberichtDao abschlussberichtDao [RuntimeVisibleAnnotations]
  private de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.abschluss.AbschlussberichtRepository abschlussberichtRepo [RuntimeVisibleAnnotations]
  public void <init>():
                    ALOAD_0     // Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenRepository; this   (line 21)
                    INVOKESPECIAL de.invesdwin.gemeinsam.persistenz.api.ARepository.<init> ()V
    constructor-execution(void de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.<init>())
    |               RETURN
    constructor-execution(void de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.<init>())
  end public void <init>()

  public de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity loescheUnternehmenMitAllenDaten(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity)    org.aspectj.weaver.MethodDeclarationLineNumber: 39:1511
:
    method-execution(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.loescheUnternehmenMitAllenDaten(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity))
    |               ALOAD_0     // Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenRepository; this   (line 40)
    | field-get(de.invesdwin.finanzdaten.persistenz.unternehmen.IUnternehmenLoeschenHook[] de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.unternehmenLoeschenHooks)
    | |             GETFIELD de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.unternehmenLoeschenHooks [Lde/invesdwin/finanzdaten/persistenz/unternehmen/IUnternehmenLoeschenHook;
    | field-get(de.invesdwin.finanzdaten.persistenz.unternehmen.IUnternehmenLoeschenHook[] de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.unternehmenLoeschenHooks)
    |               DUP
    |               ASTORE 5
    |               ARRAYLENGTH
    |               ISTORE 4
    |               ICONST_0
    |               ISTORE_3
    |               GOTO L1
    |           L0: ALOAD 5
    |               ILOAD_3
    |               AALOAD
    |               ASTORE_2
    |               ALOAD_2     // Lde/invesdwin/finanzdaten/persistenz/unternehmen/IUnternehmenLoeschenHook; hook   (line 41)
    |               ALOAD_1     // Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenEntity; unternehmen
    | method-call(void de.invesdwin.finanzdaten.persistenz.unternehmen.IUnternehmenLoeschenHook.abhaengigeDatenLoeschen(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity))
    | |             INVOKEINTERFACE de.invesdwin.finanzdaten.persistenz.unternehmen.IUnternehmenLoeschenHook.abhaengigeDatenLoeschen (Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenEntity;)V
    | method-call(void de.invesdwin.finanzdaten.persistenz.unternehmen.IUnternehmenLoeschenHook.abhaengigeDatenLoeschen(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity))
    |               IINC_3 1   (line 40)
    |           L1: ILOAD_3
    |               ILOAD 4
    |               IF_ICMPLT L0
    |               ALOAD_0     // Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenRepository; this   (line 43)
    |               ALOAD_1     // Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenEntity; unternehmen
    | method-call(void de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.loescheAktienZuUnternehmen(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity))
    | |             INVOKESPECIAL de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.loescheAktienZuUnternehmen (Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenEntity;)V
    | method-call(void de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.loescheAktienZuUnternehmen(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity))
    |               ALOAD_0     // Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenRepository; this   (line 44)
    |               ALOAD_1     // Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenEntity; unternehmen
    | method-call(void de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.loescheJahreszusammenfassungenZuUnternehmen(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity))
    | |             INVOKESPECIAL de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.loescheJahreszusammenfassungenZuUnternehmen (Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenEntity;)V
    | method-call(void de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.loescheJahreszusammenfassungenZuUnternehmen(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity))
    |               ALOAD_0     // Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenRepository; this   (line 45)
    |               ALOAD_1     // Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenEntity; unternehmen
    | method-call(void de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.loescheAbschlussberichteZuUnternehmen(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity))
    | |             INVOKESPECIAL de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.loescheAbschlussberichteZuUnternehmen (Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenEntity;)V
    | method-call(void de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.loescheAbschlussberichteZuUnternehmen(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity))
    |               ALOAD_0     // Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenRepository; this   (line 46)
    | field-get(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenDao de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.unternehmenDao)
    | |             GETFIELD de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.unternehmenDao Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenDao;
    | field-get(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenDao de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.unternehmenDao)
    |               ALOAD_1     // Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenEntity; unternehmen
    | method-call(de.invesdwin.gemeinsam.persistenz.api.AEntity de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenDao.loesche(de.invesdwin.gemeinsam.persistenz.api.AEntity))
    | |             INVOKEVIRTUAL de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenDao.loesche (Lde/invesdwin/gemeinsam/persistenz/api/AEntity;)Lde/invesdwin/gemeinsam/persistenz/api/AEntity;
    | method-call(de.invesdwin.gemeinsam.persistenz.api.AEntity de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenDao.loesche(de.invesdwin.gemeinsam.persistenz.api.AEntity))
    |               CHECKCAST de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity
    |               ARETURN
    method-execution(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.loescheUnternehmenMitAllenDaten(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity))
  end public de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity loescheUnternehmenMitAllenDaten(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity)

  private void loescheAktienZuUnternehmen(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity)    org.aspectj.weaver.MethodDeclarationLineNumber: 50:1996
:
    method-execution(void de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.loescheAktienZuUnternehmen(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity))
    |               NEW de.invesdwin.finanzdaten.persistenz.aktie.AktieEntity   (line 51)
    |               DUP
    | constructor-call(void de.invesdwin.finanzdaten.persistenz.aktie.AktieEntity.<init>())
    | |             INVOKESPECIAL de.invesdwin.finanzdaten.persistenz.aktie.AktieEntity.<init> ()V
    | constructor-call(void de.invesdwin.finanzdaten.persistenz.aktie.AktieEntity.<init>())
    |               ASTORE_2
    |               ALOAD_2     // Lde/invesdwin/finanzdaten/persistenz/aktie/AktieEntity; qbe   (line 52)
    |               ALOAD_1     // Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenEntity; unternehmen
    | method-call(void de.invesdwin.finanzdaten.persistenz.aktie.AktieEntity.setUnternehmen(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity))
    | |             INVOKEVIRTUAL de.invesdwin.finanzdaten.persistenz.aktie.AktieEntity.setUnternehmen (Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenEntity;)V
    | method-call(void de.invesdwin.finanzdaten.persistenz.aktie.AktieEntity.setUnternehmen(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity))
    |               ALOAD_0     // Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenRepository; this   (line 59)
    | field-get(de.invesdwin.finanzdaten.persistenz.aktie.AktieDao de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.aktieDao)
    | |             GETFIELD de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.aktieDao Lde/invesdwin/finanzdaten/persistenz/aktie/AktieDao;
    | field-get(de.invesdwin.finanzdaten.persistenz.aktie.AktieDao de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.aktieDao)
    |               ALOAD_2     // Lde/invesdwin/finanzdaten/persistenz/aktie/AktieEntity; qbe
    | method-call(java.util.List de.invesdwin.finanzdaten.persistenz.aktie.AktieDao.leseAlle(de.invesdwin.gemeinsam.persistenz.api.AEntity))
    | |             INVOKEVIRTUAL de.invesdwin.finanzdaten.persistenz.aktie.AktieDao.leseAlle (Lde/invesdwin/gemeinsam/persistenz/api/AEntity;)Ljava/util/List;
    | method-call(java.util.List de.invesdwin.finanzdaten.persistenz.aktie.AktieDao.leseAlle(de.invesdwin.gemeinsam.persistenz.api.AEntity))
    | method-call(java.util.Iterator java.util.List.iterator())
    | |             INVOKEINTERFACE java.util.List.iterator ()Ljava/util/Iterator;
    | method-call(java.util.Iterator java.util.List.iterator())
    |               ASTORE 4
    |               GOTO L1
    |           L0: ALOAD 4
    | method-call(java.lang.Object java.util.Iterator.next())
    | |             INVOKEINTERFACE java.util.Iterator.next ()Ljava/lang/Object;
    | method-call(java.lang.Object java.util.Iterator.next())
    |               CHECKCAST de.invesdwin.finanzdaten.persistenz.aktie.AktieEntity
    |               ASTORE_3
    |               ALOAD_0     // Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenRepository; this   (line 60)
    | field-get(de.invesdwin.finanzdaten.persistenz.aktie.AktieRepository de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.aktieRepo)
    | |             GETFIELD de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.aktieRepo Lde/invesdwin/finanzdaten/persistenz/aktie/AktieRepository;
    | field-get(de.invesdwin.finanzdaten.persistenz.aktie.AktieRepository de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.aktieRepo)
    |               ALOAD_3     // Lde/invesdwin/finanzdaten/persistenz/aktie/AktieEntity; aktie
    | method-call(de.invesdwin.finanzdaten.persistenz.aktie.AktieEntity de.invesdwin.finanzdaten.persistenz.aktie.AktieRepository.loescheAktieMitAllenDaten(de.invesdwin.finanzdaten.persistenz.aktie.AktieEntity))
    | |             INVOKEVIRTUAL de.invesdwin.finanzdaten.persistenz.aktie.AktieRepository.loescheAktieMitAllenDaten (Lde/invesdwin/finanzdaten/persistenz/aktie/AktieEntity;)Lde/invesdwin/finanzdaten/persistenz/aktie/AktieEntity;
    | method-call(de.invesdwin.finanzdaten.persistenz.aktie.AktieEntity de.invesdwin.finanzdaten.persistenz.aktie.AktieRepository.loescheAktieMitAllenDaten(de.invesdwin.finanzdaten.persistenz.aktie.AktieEntity))
    |               POP
    |           L1: ALOAD 4   (line 59)
    | method-call(boolean java.util.Iterator.hasNext())
    | |             INVOKEINTERFACE java.util.Iterator.hasNext ()Z
    | method-call(boolean java.util.Iterator.hasNext())
    |               IFNE L0
    |               RETURN   (line 62)
    method-execution(void de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.loescheAktienZuUnternehmen(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity))
  end private void loescheAktienZuUnternehmen(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity)

  private void loescheJahreszusammenfassungenZuUnternehmen(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity)    org.aspectj.weaver.MethodDeclarationLineNumber: 65:2634
:
    method-execution(void de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.loescheJahreszusammenfassungenZuUnternehmen(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity))
    |               NEW de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.JahreszusammenfassungEntity   (line 66)
    |               DUP
    | constructor-call(void de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.JahreszusammenfassungEntity.<init>())
    | |             INVOKESPECIAL de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.JahreszusammenfassungEntity.<init> ()V
    | constructor-call(void de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.JahreszusammenfassungEntity.<init>())
    |               ASTORE_2
    |               ALOAD_2     // Lde/invesdwin/finanzdaten/persistenz/unternehmen/bericht/JahreszusammenfassungEntity; jahreszusammenfassungExample   (line 67)
    |               ALOAD_1     // Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenEntity; unternehmen
    | method-call(void de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.JahreszusammenfassungEntity.setUnternehmen(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity))
    | |             INVOKEVIRTUAL de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.JahreszusammenfassungEntity.setUnternehmen (Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenEntity;)V
    | method-call(void de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.JahreszusammenfassungEntity.setUnternehmen(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity))
    |               ALOAD_0     // Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenRepository; this   (line 68)
    | field-get(de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.JahreszusammenfassungDao de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.jahreszusammenfassungDao)
    | |             GETFIELD de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.jahreszusammenfassungDao Lde/invesdwin/finanzdaten/persistenz/unternehmen/bericht/JahreszusammenfassungDao;
    | field-get(de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.JahreszusammenfassungDao de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.jahreszusammenfassungDao)
    |               ALOAD_2     // Lde/invesdwin/finanzdaten/persistenz/unternehmen/bericht/JahreszusammenfassungEntity; jahreszusammenfassungExample
    | method-call(int de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.JahreszusammenfassungDao.loescheAlle(de.invesdwin.gemeinsam.persistenz.api.AEntity))
    | |             INVOKEVIRTUAL de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.JahreszusammenfassungDao.loescheAlle (Lde/invesdwin/gemeinsam/persistenz/api/AEntity;)I
    | method-call(int de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.JahreszusammenfassungDao.loescheAlle(de.invesdwin.gemeinsam.persistenz.api.AEntity))
    |               POP
    |               RETURN   (line 69)
    method-execution(void de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.loescheJahreszusammenfassungenZuUnternehmen(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity))
  end private void loescheJahreszusammenfassungenZuUnternehmen(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity)

  private void loescheAbschlussberichteZuUnternehmen(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity)    org.aspectj.weaver.MethodDeclarationLineNumber: 72:3010
:
    method-execution(void de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.loescheAbschlussberichteZuUnternehmen(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity))
    |               NEW de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.abschluss.AbschlussberichtEntity   (line 73)
    |               DUP
    | constructor-call(void de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.abschluss.AbschlussberichtEntity.<init>())
    | |             INVOKESPECIAL de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.abschluss.AbschlussberichtEntity.<init> ()V
    | constructor-call(void de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.abschluss.AbschlussberichtEntity.<init>())
    |               ASTORE_2
    |               ALOAD_2     // Lde/invesdwin/finanzdaten/persistenz/unternehmen/bericht/abschluss/AbschlussberichtEntity; qbe   (line 74)
    |               ALOAD_1     // Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenEntity; unternehmen
    | method-call(void de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.abschluss.AbschlussberichtEntity.setUnternehmen(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity))
    | |             INVOKEVIRTUAL de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.abschluss.AbschlussberichtEntity.setUnternehmen (Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenEntity;)V
    | method-call(void de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.abschluss.AbschlussberichtEntity.setUnternehmen(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity))
    |               ALOAD_0     // Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenRepository; this   (line 75)
    | field-get(de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.abschluss.AbschlussberichtDao de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.abschlussberichtDao)
    | |             GETFIELD de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.abschlussberichtDao Lde/invesdwin/finanzdaten/persistenz/unternehmen/bericht/abschluss/AbschlussberichtDao;
    | field-get(de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.abschluss.AbschlussberichtDao de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.abschlussberichtDao)
    |               ALOAD_2     // Lde/invesdwin/finanzdaten/persistenz/unternehmen/bericht/abschluss/AbschlussberichtEntity; qbe
    | method-call(java.util.List de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.abschluss.AbschlussberichtDao.leseAlle(de.invesdwin.gemeinsam.persistenz.api.AEntity))
    | |             INVOKEVIRTUAL de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.abschluss.AbschlussberichtDao.leseAlle (Lde/invesdwin/gemeinsam/persistenz/api/AEntity;)Ljava/util/List;
    | method-call(java.util.List de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.abschluss.AbschlussberichtDao.leseAlle(de.invesdwin.gemeinsam.persistenz.api.AEntity))
    | method-call(java.util.Iterator java.util.List.iterator())
    | |             INVOKEINTERFACE java.util.List.iterator ()Ljava/util/Iterator;
    | method-call(java.util.Iterator java.util.List.iterator())
    |               ASTORE 4
    |               GOTO L1
    |           L0: ALOAD 4
    | method-call(java.lang.Object java.util.Iterator.next())
    | |             INVOKEINTERFACE java.util.Iterator.next ()Ljava/lang/Object;
    | method-call(java.lang.Object java.util.Iterator.next())
    |               CHECKCAST de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.abschluss.AbschlussberichtEntity
    |               ASTORE_3
    |               ALOAD_0     // Lde/invesdwin/finanzdaten/persistenz/unternehmen/UnternehmenRepository; this   (line 76)
    | field-get(de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.abschluss.AbschlussberichtRepository de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.abschlussberichtRepo)
    | |             GETFIELD de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.abschlussberichtRepo Lde/invesdwin/finanzdaten/persistenz/unternehmen/bericht/abschluss/AbschlussberichtRepository;
    | field-get(de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.abschluss.AbschlussberichtRepository de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.abschlussberichtRepo)
    |               ALOAD_3     // Lde/invesdwin/finanzdaten/persistenz/unternehmen/bericht/abschluss/AbschlussberichtEntity; abschlussbericht
    | method-call(de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.abschluss.AbschlussberichtEntity de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.abschluss.AbschlussberichtRepository.loescheAbschlussberichtMitAllenDaten(de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.abschluss.AbschlussberichtEntity))
    | |             INVOKEVIRTUAL de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.abschluss.AbschlussberichtRepository.loescheAbschlussberichtMitAllenDaten (Lde/invesdwin/finanzdaten/persistenz/unternehmen/bericht/abschluss/AbschlussberichtEntity;)Lde/invesdwin/finanzdaten/persistenz/unternehmen/bericht/abschluss/AbschlussberichtEntity;
    | method-call(de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.abschluss.AbschlussberichtEntity de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.abschluss.AbschlussberichtRepository.loescheAbschlussberichtMitAllenDaten(de.invesdwin.finanzdaten.persistenz.unternehmen.bericht.abschluss.AbschlussberichtEntity))
    |               POP
    |           L1: ALOAD 4   (line 75)
    |               INVOKEINTERFACE java.util.Iterator.hasNext ()Z
    |               IFNE L0
    |               RETURN   (line 78)
    method-execution(void de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository.loescheAbschlussberichteZuUnternehmen(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity))
  end private void loescheAbschlussberichteZuUnternehmen(de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenEntity)

end public class de.invesdwin.finanzdaten.persistenz.unternehmen.UnternehmenRepository

!STACK 0
org.aspectj.org.eclipse.jdt.internal.compiler.problem.AbortCompilation
	at org.aspectj.org.eclipse.jdt.internal.compiler.problem.ProblemHandler.handle(ProblemHandler.java:97)
	at org.aspectj.ajdt.internal.compiler.problem.AjProblemReporter.handle(AjProblemReporter.java:306)
	at org.aspectj.org.eclipse.jdt.internal.compiler.problem.ProblemHandler.handle(ProblemHandler.java:154)
	at org.aspectj.org.eclipse.jdt.internal.compiler.problem.ProblemReporter.handle(ProblemReporter.java:1735)
	at org.aspectj.org.eclipse.jdt.internal.compiler.problem.ProblemReporter.isClassPathCorrect(ProblemReporter.java:3531)
	at org.aspectj.org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.cacheMissingBinaryType(LookupEnvironment.java:189)
	at org.aspectj.org.eclipse.jdt.internal.compiler.lookup.UnresolvedReferenceBinding.resolve(UnresolvedReferenceBinding.java:52)
	at org.aspectj.org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.resolveType(BinaryTypeBinding.java:99)
	at org.aspectj.org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage(PackageBinding.java:167)
	at org.aspectj.org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.findImport(CompilationUnitScope.java:451)
	at org.aspectj.org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.findSingleImport(CompilationUnitScope.java:505)
	at org.aspectj.org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.faultInImports(CompilationUnitScope.java:361)
	at org.aspectj.org.eclipse.jdt.internal.compiler.lookup.Scope.getBinding(Scope.java:1606)
	at org.aspectj.org.eclipse.jdt.internal.compiler.lookup.BlockScope.getBinding(BlockScope.java:406)
	at org.aspectj.org.eclipse.jdt.internal.compiler.ast.QualifiedNameReference.resolveType(QualifiedNameReference.java:1028)
	at org.aspectj.org.eclipse.jdt.internal.compiler.ast.MemberValuePair.resolveTypeExpecting(MemberValuePair.java:84)
	at org.aspectj.org.eclipse.jdt.internal.compiler.ast.Annotation.resolveType(Annotation.java:268)
	at org.aspectj.org.eclipse.jdt.internal.compiler.ast.ASTNode.resolveAnnotations(ASTNode.java:594)
	at org.aspectj.org.eclipse.jdt.internal.compiler.lookup.MethodBinding.getAnnotationTagBits(MethodBinding.java:509)
	at org.aspectj.org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding.resolveTypesFor(SourceTypeBinding.java:1392)
	at org.aspectj.org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding.methodsBase(SourceTypeBinding.java:1185)
	at org.aspectj.org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding.methods(SourceTypeBinding.java:1757)
	at org.aspectj.ajdt.internal.compiler.lookup.EclipseSourceType.fillDeclaredMembers(EclipseSourceType.java:244)
	at org.aspectj.ajdt.internal.compiler.lookup.EclipseSourceType.getDeclaredMethods(EclipseSourceType.java:395)
	at org.aspectj.weaver.ReferenceType.getDeclaredMethods(ReferenceType.java:772)
	at org.aspectj.weaver.ResolvedType.lookupMethod(ResolvedType.java:534)
	at org.aspectj.weaver.World.resolve(World.java:617)
	at org.aspectj.weaver.MemberImpl.resolve(MemberImpl.java:95)
	at org.aspectj.weaver.JoinPointSignatureIterator.addSignaturesUpToFirstDefiningMember(JoinPointSignatureIterator.java:112)
	at org.aspectj.weaver.JoinPointSignatureIterator.<init>(JoinPointSignatureIterator.java:49)
	at org.aspectj.weaver.MemberImpl.getJoinPointSignatures(MemberImpl.java:519)
	at org.aspectj.weaver.patterns.SignaturePattern.matches(SignaturePattern.java:316)
	at org.aspectj.weaver.patterns.KindedPointcut.matchInternal(KindedPointcut.java:202)
	at org.aspectj.weaver.patterns.Pointcut.match(Pointcut.java:136)
	at org.aspectj.weaver.patterns.AndPointcut.matchInternal(AndPointcut.java:51)
	at org.aspectj.weaver.patterns.Pointcut.match(Pointcut.java:136)
	at org.aspectj.weaver.patterns.OrPointcut.matchInternal(OrPointcut.java:50)
	at org.aspectj.weaver.patterns.Pointcut.match(Pointcut.java:136)
	at org.aspectj.weaver.patterns.OrPointcut.matchInternal(OrPointcut.java:50)
	at org.aspectj.weaver.patterns.Pointcut.match(Pointcut.java:136)
	at org.aspectj.weaver.patterns.OrPointcut.matchInternal(OrPointcut.java:50)
	at org.aspectj.weaver.patterns.Pointcut.match(Pointcut.java:136)
	at org.aspectj.weaver.ShadowMunger.match(ShadowMunger.java:113)
	at org.aspectj.weaver.Advice.match(Advice.java:109)
	at org.aspectj.weaver.bcel.BcelAdvice.match(BcelAdvice.java:149)
	at org.aspectj.weaver.bcel.BcelClassWeaver.match(BcelClassWeaver.java:3129)
	at org.aspectj.weaver.bcel.BcelClassWeaver.matchInvokeInstruction(BcelClassWeaver.java:3077)
	at org.aspectj.weaver.bcel.BcelClassWeaver.match(BcelClassWeaver.java:2778)
	at org.aspectj.weaver.bcel.BcelClassWeaver.match(BcelClassWeaver.java:2555)
	at org.aspectj.weaver.bcel.BcelClassWeaver.weave(BcelClassWeaver.java:473)
	at org.aspectj.weaver.bcel.BcelClassWeaver.weave(BcelClassWeaver.java:99)
	at org.aspectj.weaver.bcel.BcelWeaver.weave(BcelWeaver.java:1674)
	at org.aspectj.weaver.bcel.BcelWeaver.weaveWithoutDump(BcelWeaver.java:1618)
	at org.aspectj.weaver.bcel.BcelWeaver.weaveAndNotify(BcelWeaver.java:1379)
	at org.aspectj.weaver.bcel.BcelWeaver.weave(BcelWeaver.java:1173)
	at org.aspectj.ajdt.internal.compiler.AjPipeliningCompilerAdapter.weaveQueuedEntries(AjPipeliningCompilerAdapter.java:514)
	at org.aspectj.ajdt.internal.compiler.AjPipeliningCompilerAdapter.queueForWeaving(AjPipeliningCompilerAdapter.java:447)
	at org.aspectj.ajdt.internal.compiler.AjPipeliningCompilerAdapter.afterProcessing(AjPipeliningCompilerAdapter.java:432)
	at org.aspectj.ajdt.internal.compiler.CompilerAdapter.ajc$after$org_aspectj_ajdt_internal_compiler_CompilerAdapter$5$6b855184(CompilerAdapter.aj:98)
	at org.aspectj.org.eclipse.jdt.internal.compiler.Compiler.process(Compiler.java:652)
	at org.aspectj.org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:392)
	at org.aspectj.ajdt.internal.core.builder.AjBuildManager.performCompilation(AjBuildManager.java:1022)
	at org.aspectj.ajdt.internal.core.builder.AjBuildManager.performBuild(AjBuildManager.java:305)
	at org.aspectj.ajdt.internal.core.builder.AjBuildManager.incrementalBuild(AjBuildManager.java:185)
	at org.aspectj.ajde.core.internal.AjdeCoreBuildManager.performBuild(AjdeCoreBuildManager.java:127)
	at org.aspectj.ajde.core.AjCompiler.build(AjCompiler.java:88)
	at org.eclipse.ajdt.core.builder.AJBuilder.build(AJBuilder.java:245)
	at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:629)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:172)
	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:203)
	at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:255)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:258)
	at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:311)
	at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:343)
	at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:144)
	at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:242)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

!ENTRY org.eclipse.ajdt.ui 4 0 2011-08-25 15:59:23.826
!MESSAGE Compile error: ArrayIndexOutOfBoundsException thrown: 0
!STACK 0
java.lang.ArrayIndexOutOfBoundsException: 0
	at org.aspectj.org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.bindArguments(AbstractMethodDeclaration.java:94)
	at org.aspectj.org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolve(AbstractMethodDeclaration.java:400)
	at org.aspectj.org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1109)
	at org.aspectj.org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1188)
	at org.aspectj.org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.resolve(CompilationUnitDeclaration.java:366)
	at org.aspectj.org.eclipse.jdt.internal.compiler.Compiler.process(Compiler.java:636)
	at org.aspectj.org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:392)
	at org.aspectj.ajdt.internal.core.builder.AjBuildManager.performCompilation(AjBuildManager.java:1022)
	at org.aspectj.ajdt.internal.core.builder.AjBuildManager.performBuild(AjBuildManager.java:305)
	at org.aspectj.ajdt.internal.core.builder.AjBuildManager.incrementalBuild(AjBuildManager.java:185)
	at org.aspectj.ajde.core.internal.AjdeCoreBuildManager.performBuild(AjdeCoreBuildManager.java:127)
	at org.aspectj.ajde.core.AjCompiler.build(AjCompiler.java:88)
	at org.eclipse.ajdt.core.builder.AJBuilder.build(AJBuilder.java:245)
	at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:629)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:172)
	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:203)
	at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:255)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:258)
	at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:311)
	at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:343)
	at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:144)
	at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:242)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Comment 16 Missing name CLA 2011-08-25 10:08:16 EDT
Interesting about this is that the AbortCompilation exception was logged, then the IndexOutOfBounds occured and got put in the error dialog instead of the AbortCompilation.

In the previous occurence, it was just the AbortCompilation which was logged and which also got into the error dialog.