19.11.2013 Aufrufe

Download Masterarbeit Timo Meinen - Meinen, Timo

Download Masterarbeit Timo Meinen - Meinen, Timo

Download Masterarbeit Timo Meinen - Meinen, Timo

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

4.4. IMPLEMENTIERUNG<br />

ment in der Entwicklungsumgebung Eclipse mit @Friendship annotiert, erscheint<br />

neben der Zeile ein Rufzeichen als Warnhinweis. Führt der Benutzer seine Maus<br />

über das Rufzeichen wird ein Hinweis ausgegeben, dass die Sichtbarkeit für die<br />

befreundeten Elemente veröffentlicht wurde. In einer zusätzlichen Ansicht sieht<br />

der Benutzer auch direkt, welche Klassen betroffen sind.<br />

Der Java-Compiler bietet ab Version 6 ebenfalls die Möglichkeit solche Prozessoren<br />

vor dem eigentlichen Kompiliervorgang auszuführen und den AST des Java-<br />

Programmes zu modifizieren. Leider hat der Aspekt-Compiler von AspectJ AJC<br />

noch nicht nachgezogen und bietet daher diese Funktionalität noch nicht an. Um<br />

AST-Prozessoren und Aspekte miteinander zu kompilieren war der Einsatz dieses<br />

externen Spoon-Prozoessors notwendig. Mit Hilfe des Build-Werkzeuges Apache<br />

Ant 4 lassen sich aber sowohl Spoon als auch AspectJ miteinander verknüpfen.<br />

Dazu wird vor dem Einweben der Aspekte der Spoon-Prozessor ausgeführt, der<br />

AST modifiziert und die veränderten Programmteile an den Aspekt-Compiler weitergereicht,<br />

der dann die Friendship-Aspekte einwebt. Dies funktioniert, indem das<br />

veränderte Programm-Modell des Spoon-Prozessors wieder als Java-Code in einem<br />

temporären Verzeichnis ausgegeben wird. Dieser Code wird dann vom Aspekt-<br />

Compiler als Quelle verwendet, um die Aspekte einzuweben. Ein vollständig funktionierendes<br />

Ant-Skript für diese Prozedur befindet sich als Teil der <strong>Masterarbeit</strong><br />

in Anhang C auf Seite 126.<br />

Die Verwendung des Ant-Skriptes ist dann notwendig, wenn der Zugriff auf private<br />

deklarierte Elemente möglich sein soll.<br />

4 http://ant.apache.org/<br />

89

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!