GWT mit Maven und Eclipse

GWT ist ja ein neues Buzzword, wenn es um die Entwicklung aktueller AJAX-Web-Applikationen ist. Wer aber wie wir in einem Maven-Umfeld arbeitet wird schnell feststellen, dass die Integration des Google Webtoolkits in den Maven-Build und das Eclipse-Development nicht ganz so einfach ist, wie es auf den ersten Blick aussieht.

Aus diesem Grund habe ich folgendes HowTo erstellt, mit dem relativ schnell eine Projekt-Struktur erstellt werden kann.

Voraussetzungen :

1) Eclipse 3.5 : Download

2) M2-Eclipse Plugin 0.10 : Download

3) GWT 2.0.2 : Download

Als erstes wird mit dem Eclipse Wizard ein neues „Web Application Project“ erstellt :

Die Details für dieses Projekt werden vom Wizard abgefragt, die AppEngine wird erstmal nicht verwendet :

Anschließend wird dann per M2-Plugin das Dependency Management aktiviert :

Die Haupt-Pom-Eigenschaften werden hier eingetragen. Wichtig dabei ist Packaging „war“. Wir wollen schließlich ein Webarchiv bauen :

Der Maven-Konformität zu liebe verschieben wir die Sourcen in neu zu erstellende <src>/main/java – und <test>/main/java-Verzeichnisse :

Die Java-Verzeichnisse des Projekts müssen jetzt nur noch als Source-Folder deklariert werden :

Jetzt sieht unser Eclipse-Projekt folgendermaßen aus und wir stellen die Compiler-Compliance auf 1.5 :

Die Grundeinstellungen wären damit beendet. Nun folgt die Konfiguration der Pom. Hier könnt ihr euch die pom.xml herunterladen.

Nach einem „Run as Web Application“ wird der gwt-interne jetty gestartet und es kann über http://127.0.0.1:8888/Gwt_maven_eclipse.html?gwt.codesvr=127.0.0.1:9997 fröhlich developed werden. Änderungen im Code werden dabei dynamisch kompiliert und stehen nach F5 im Browser zur Verfügung. Gegebenenfalls muss das GWT-Browser-Plugin noch heruntergeladen und installiert werden. Ein „Run as Maven Package“ baut dann das fertige Webarchiv zusammen.