在Maven中运行GWTP真的很痛苦

时间:2012-02-22 10:11:30

标签: gwt maven gwt-platform

我一直在努力用GWTP运行Maven,基本上我使用Eclipse插件创建了一个GWTP gwt应用程序。并添加了一个简单的欢迎主持人。在没有maven的情况下尝试它,并且从eclipse运行良好。

然而,当我将它转换为maven项目时(我正在使用m2eclipse插件),一切都会中断。所以我添加了所需的依赖项和gwtp依赖项:

<dependency>
    <groupId>com.google.gwt.inject</groupId>
    <artifactId>gin</artifactId>
    <version>1.5.0</version>
</dependency>

 <!-- MVP component -->
<dependency>
    <groupId>com.gwtplatform</groupId>
    <artifactId>gwtp-all</artifactId>
    <version>${gwtp.version}</version>
</dependency>   

然而,当我尝试运行它时,我收到此错误:

Caused by: java.lang.RuntimeException: Deferred binding failed for 'com.google.gwt.event.shared.EventBus' (did you forget to inherit a required module?)

为什么很难用maven制作GWTP。

1 个答案:

答案 0 :(得分:3)

我认为您可能会错过gwt-user依赖项。这是我的GWTP项目的maven pom.xml:

<properties>
    <gwtVersion>2.4.0</gwtVersion>
    <gwtp.version>0.7</gwtp.version>
</properties>
<dependencies>
    <dependency>
       <groupId>com.google.gwt</groupId>
   <artifactId>gwt-user</artifactId>
   <version>${gwtVersion}</version>
   <scope>provided</scope>
</dependency>
<dependency>
    <groupId>com.gwtplatform</groupId>
    <artifactId>gwtp-mvp-client</artifactId>
    <version>${gwtp.version}</version>
    <scope>provided</scope>
</dependency>
<!-- Dispatch component -->
<dependency>
    <groupId>com.gwtplatform</groupId>
    <artifactId>gwtp-dispatch-client</artifactId>
    <version>${gwtp.version}</version>
    <scope>provided</scope> <!-- Remove for GWTP 0.5.1 and earlier -->
</dependency>
<!-- Tester component -->
<dependency>
    <groupId>com.gwtplatform</groupId>
    <artifactId>gwtp-tester</artifactId>
    <version>${gwtp.version}</version>
    <scope>test</scope>
</dependency>

如果您使用最新的gwtp 0.7,请注意他们已从com.google.gwt.event.shared中的折旧类切换到com.google.web.bindery.event.shared

有关详细信息,请参阅here