Mittwoch, 23. Juli 2008

Erste Schritte mit ANTLR

Ich wollte ANTLR, den Parser-Generator ausprobieren. Da es für Netbeans kein Plugin gibt, das die Erstellung der Grammatiken unterstützt, habe ich eines für Eclipse gesucht.

Mit ANTLRV3IDE bin ich fündig geworden und habe versucht es über die Remote-Site http://antlrv3ide.sourceforge.net/updates zu installieren.

Mit Eclipse Europa gab es viele Probleme, da die Abhängigkeiten nicht aufgelöst werden konnten. Mit Eclipe Ganymede klappte es auf anhieb.

Ich sah jetzt unter New/Other den Eintrag ANTLR/Grammer, aber immer wenn ich einen Grammerfile erstellen wollte merkerte der Wizard.

Die Vorgehensweise, die zum Erfolg führte ist folgende:
  1. ein Java-Projekt erstellen
  2. ANTLR Support zum Projekt hinzufügen

Nun konnte ich in Source-Verzeichnis eine Grammerdatei anlegen.

Mit STRG-SHIFT-G wurden die Java-Dateien generiert.

Leider werden die benötigten ANTLR-Bibliotheken nicht automatisch hinzugefügt.

Also habe ich manuell

antlr-2.7.7.jar, antlr-3.0.1.jar, antlr-runtime-3.0.1.jar und stringtemplate-3.1b1.jar

zum BuildPath hinzugefügt.

Das meiste konnte jetzt aufgelöst werden, aber ein Problem bestand immer noch.

Die Klasse RecognizerShareState war nicht zu finden.

Die Lösung war, dass das ANTLRV3IDE-Plugin standardmäßig mit dem zur Zeit noch im Beta-Status befindlichen Version 3.1 eingestellt ist. Nach der Umstellung auf 3.0 waren keine Fehler mehr in den generierten Sourcen.