Ich stoße heute auf einen StackOverflow-Fehler des AspectJ-Compilers und dachte, ich sollte ihn auf StackOverflow teilen :-) Um den Fehler zu reproduzieren, habe ich ein Spielzeugbeispiel gemacht
%Vor%Der Versuch, diesen Code zu kompilieren, führt zu folgendem Fehler:
%Vor%Wenn ich jedoch die Generics in der Node-Klasse zu
ändere %Vor%(beachten Sie ? anstelle von Q ), das Programm funktioniert und gibt aus, was Sie erwarten würden:
%Vor%obwohl Eclipse sich darüber beschwert
Die Methode setParent (StringContentNode) ist für den Typ StringContentNode
nicht definiert
wenn ich die WithParent-Schnittstelle leer lasse, wie es jetzt ist, oder das
Der Typ StringContentNode muss die geerbte abstrakte Methode implementieren WithParent.getParent ()
Wenn ich Getter und Setter in der Schnittstelle definiere.
Soll ich den Fehler signalisieren? Gibt es eine sauberere Möglichkeit, die gleiche Funktionalität zu erreichen, ohne dass es zu einem komischen Kompilierungsproblem kommt?
Danke!
Es scheint, dass niemand einen Workaround vorschlagen wird, der es ermöglicht, rekursive generische Interfaces über AspectJ trotz des Fehlers weiter zu implementieren. Es wäre interessant gewesen, solch eine Lösung zu finden, aber ich denke, es wird wahrscheinlich nicht existieren.
Bitte geben Sie Ihre Stimmen über den Fehlerbericht Ссылка ab, wenn Sie können.
Prost.
Tags und Links java aspectj stack-overflow compiler-bug