Je ressens votre douleur. J'ai vécu la même chose en essayant de faire fonctionner ensemble gwt, maven et eclipse.
J'ai réussi à le faire fonctionner avec maven en utilisant le pom.xml suivant. De cette façon, vous pouvez utiliser mvn gwt:run
pour fonctionner en mode hébergé, mais malheureusement, je n'ai jamais pu faire fonctionner le but mvn mvn gwt:eclipse
pour que la génération d'une configuration d'exécution du lancement d'Eclipse fonctionne.
Voici les extraits pertinents de mon pom.xml. Notez que j'ai trouvé plus facile d'installer gwt dans un endroit séparé et de demander à maven de l'utiliser plutôt que de demander à mvn de télécharger gwt depuis le repo. Le niveau "system" dans les dépendances de mvn est ce qui rend cela possible.
<properties>
<!-- convenience to define GWT version in one place -->
<gwt.version>1.7.1</gwt.version>
<google.webtoolkit.home>${env.GWT_HOME}</google.webtoolkit.home>
<!-- tell the compiler we can use 1.5 -->
<maven.compiler.source>1.6</maven.compiler.source>
<maven.compiler.target>1.6</maven.compiler.target>
</properties>
<dependencies>
<!-- GWT dependencies (from central repo) -->
<dependency>
<groupId>com.google.gwt</groupId>
<artifactId>gwt-servlet</artifactId>
<version>${gwt.version}</version>
<scope>system</scope>
<systemPath>${env.GWT_HOME}/gwt-servlet.jar</systemPath>
</dependency>
<dependency>
<groupId>com.google.gwt</groupId>
<artifactId>gwt-user</artifactId>
<version>${gwt.version}</version>
<scope>system</scope>
<systemPath>${env.GWT_HOME}/gwt-user.jar</systemPath>
</dependency>
... other dependencies...
</dependencies>
<build>
<outputDirectory>war/WEB-INF/classes</outputDirectory>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>gwt-maven-plugin</artifactId>
<version>1.1</version>
<executions>
<execution>
<goals>
<goal>compile</goal>
<goal>generateAsync</goal>
<goal>test</goal>
</goals>
</execution>
</executions>
<configuration>
<runTarget>com.gwt.example/Application.html</runTarget>
<extraJvmArgs>-Xmx512m</extraJvmArgs>
</configuration>
</plugin>
<!--
If you want to use the target/web.xml file mergewebxml produces,
tell the war plugin to use it.
Also, exclude what you want from the final artifact here.
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<webXml>target/web.xml</webXml>
<warSourceExcludes>.gwt-tmp/**</warSourceExcludes>
</configuration>
</plugin>
-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.0.2</version>
<configuration>
<source>${maven.compiler.source}</source>
<target>${maven.compiler.target}</target>
<module>com.gwt.example</module>
</configuration>
</plugin>
</plugins>
...rest of pom.xml...
Une autre technique que j'ai utilisée avec succès est l'utilisation de l'éclipse plugin google gwt . Il suffit d'utiliser l'assistant pour créer un nouveau projet gwt, de s'assurer que l'on peut l'exécuter à partir d'Eclipse, puis de le modifier avec son propre code.