错误“找不到GWT模块”为Maven项目导入到Eclipse [英] Error "No GWT module found" for Maven project imported into Eclipse

查看:276
本文介绍了错误“找不到GWT模块”为Maven项目导入到Eclipse的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经将一个Maven项目导入到Eclipse中,并尝试使用WindowBuilder Editor打开一个com.google.gwt.core.client.EntryPoint子类。 WindowBuilder编辑器给了我这个错误:

 没有找到GWT模块
GWT小部件只能在客户端包中使用GWT模块。

我的环境:




  • Eclipse版本:Luna(从Eclipse =>关于Eclipse)

  • WindowBuilder:1.7.0r44(来自Help => Installation Details)

  • GWT设计师:3.1.3r44(从帮助=>安装详细信息)



现在,我不知道环境如何受到我项目的POM.xml中的设置的影响,所以我也将包括我的POM.xml:

 <?xml version =1.0encoding =UTF-8?> 
< project xmlns =http://maven.apache.org/POM/4.0.0xmlns:xsi =http://www.w3.org/2001/XMLSchema-instancexsi:schemaLocation =http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd\">
< modelVersion> 4.0.0< / modelVersion>
< parent>
< groupId> com.netbase.nbsocialmetrics< / groupId>
< artifactId> SocialMetrics< / artifactId>
< version> 1.0< / version>
< / parent>

< groupId> com.netbase.nbsocialmetrics< / groupId>
< artifactId> nbsocialmetrics-frontend< / artifactId>
< packaging> war< / packaging>
< version> 1.0< / version>

< name> nbsocialmetrics-frontend< / name>

< properties>
<! - 设置GWT版本的便利属性 - >
< gwtVersion> 2.7.0-rc1< / gwtVersion>

<! - GWT至少需要java 1.6 - >
< maven.compiler.source> 1.7< /maven.compiler.source>
< maven.compiler.target> 1.7< /maven.compiler.target>

< project.build.sourceEncoding> UTF-8< /project.build.sourceEncoding>
< / properties>

<! - 对于GWT - >
< dependencyManagement>
<依赖关系>
<依赖关系>
< groupId> com.google.gwt< / groupId>
< artifactId> gwt< / artifactId>
< version> $ {gwtVersion}< / version>
< type> pom< / type>
< scope> import< / scope>
< / dependency>
< / dependencies>
< / dependencyManagement>

<依赖关系>
<! - 编译/运行时依赖关系 - >
<依赖关系>
< groupId> com.google.appengine< / groupId>
< artifactId> appengine-api-1.0-sdk< / artifactId>
< version> $ {appengine.target.version}< / version>
< / dependency>
<依赖关系>
< groupId> javax.servlet< / groupId>
< artifactId> servlet-api< / artifactId>
< version> 2.5< / version>
< scope>已提供< / scope>
< / dependency>
<依赖关系>
< groupId> jstl< / groupId>
< artifactId> jstl< / artifactId>
< version> 1.2< / version>
< / dependency>
<依赖关系>
< groupId> com.googlecode.objectify< / groupId>
< artifactId> objectify< / artifactId>
< version> 5.1.1< / version>
< / dependency>

<! - 对于GWT - >
<依赖关系>
< groupId> com.google.gwt< / groupId>
< artifactId> gwt-servlet< / artifactId>
< scope>运行时< / scope>
< / dependency>
<依赖关系>
< groupId> com.google.gwt< / groupId>
< artifactId> gwt-user< / artifactId>
< scope>已提供< / scope>
< / dependency>
<依赖关系>
< groupId> com.google.gwt< / groupId>
< artifactId> gwt-dev< / artifactId>
< scope>已提供< / scope>
< / dependency>

<! - 测试依赖关系 - >
<依赖关系>
< groupId> junit< / groupId>
< artifactId> junit< / artifactId>
< version> 4.11< / version>
< scope> test< / scope>
< / dependency>
<依赖关系>
< groupId> org.mockito< / groupId>
< artifactId> mockito-all< / artifactId>
< version> 1.9.0< / version>
< scope> test< / scope>
< / dependency>
<依赖关系>
< groupId> com.google.appengine< / groupId>
< artifactId> appengine-testing< / artifactId>
< version> $ {appengine.target.version}< / version>
< scope> test< / scope>
< / dependency>
<依赖关系>
< groupId> com.google.appengine< / groupId>
< artifactId> appengine-api-stubs< / artifactId>
< version> $ {appengine.target.version}< / version>
< scope> test< / scope>
< / dependency>
< / dependencies>

< build>
< plugins>
< plugin>
< groupId> org.apache.maven.plugins< / groupId>
< version> 2.5.1< / version>
< artifactId> maven-compiler-plugin< / artifactId>
< configuration>
< source> 1.7< / source>
< target> 1.7< / target>
< / configuration>
< / plugin>

< plugin>
< groupId> org.apache.maven.plugins< / groupId>
< artifactId> maven-war-plugin< / artifactId>
< version> 2.3< / version>
< / plugin>

< plugin>
< groupId> com.google.appengine< / groupId>
< artifactId> appengine-maven-plugin< / artifactId>
< version> $ {appengine.target.version}< / version>
< / plugin>

<! - 对于GWT - >
< plugin>
< groupId> org.codehaus.mojo< / groupId>
< artifactId> gwt-maven-plugin< / artifactId>
< version> 2.7.0-rc1< / version>
<执行>
< execution>
< goals>
< goal> compile< / goal>
< goal> test< / goal>
< goal> generateAsync< / goal>
< / goals>
< / execution>
< / executions>
<! - 插件配置。有很多可用选项,请参阅codehaus.org上的
gwt-maven-plugin文档 - >
< configuration>
< runTarget> MyGWTModule.html< / runTarget>
< modules>
< module> com.netbase.GWTArchetype.MyGWTModule< / module>
< / modules>
< / configuration>
< / plugin>

< / plugins>
< / build>

< / project>

http://forums.instantiations.com/topic-11-1710.html 我看到一个解决方法是:解决方法很简单,只需将文件从src /主要/资源到src / main / java,但真的很讨厌不使用我的项目的标准结构。我试过了,但它只是导致了一个不同的错误:

 内部错误

遇到意外的内部错误。

这可能是由错误或错误配置问题,冲突,部分更新等造成的。

java.lang.NoSuchMethodError:com.google.gwt.dev。 cfg.ModuleDefLoader.loadFromClassPath(LCOM /谷歌/ GWT /核心/ EXT / TreeLogger; Ljava /郎/字符串; Z)LCOM /谷歌/ GWT的/ dev / cfg中/ ModuleDef;

隐藏堆栈跟踪。
堆栈跟踪:

java.lang.NoSuchMethodError:com.google.gwt.dev.cfg.ModuleDefLoader.loadFromClassPath(Lcom / google / gwt / core / ext / TreeLogger; Ljava / lang /字符串; Z)LCOM /谷歌/ GWT的/ dev / cfg中/ ModuleDef;
com.google.gwt.dev.shell.designtime.HostedModeSupportImpl.loadModule(HostedModeSupportImpl.java:85)
com.google.gwt.dev.shell.designtime.HostedModeSupportImpl.createModuleSpaceHost(HostedModeSupportImpl。 java:64)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl。在org.eclipse.wb.internal.core.utils.reflect.ReflectionUtils中调用(DelegatingMethodMethodMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:606)
。 invokeMethod(ReflectionUtils.java:869)
在com.google.gdt.eclipse.designer.hosted.tdt.HostedModeSupport.createModuleSpaceHost(HostedModeSupport.java:451)
在com.google.gwt.dev。 shell.designtime.ModuleSpace。< init>(ModuleSpace.java:60)
在com.google.gdt.eclipse.designer.webkit.jsni.ModuleSpaceWebKit。< init>(ModuleSpaceWebKit.java:45)
com.google.gdt.eclipse.designer.webkit.BrowserShellWebKit.setUrl(BrowserShellWebKit.java:85)
在com.google.gdt.eclipse.designer.hosted.tdt.HostedModeSupport.startup(HostedModeSupport.java :184)
在com.google.gdt.eclipse.designer.model.widgets.support.GwtState.initialize0(GwtState.java:248)
在com.google.gdt.eclipse.designer.model .getClassLoader .wb.internal.core.parser.AbstractParseFactory.initializeClassLoader(AbstractParseFactory.java:732)
在com.google.gdt.eclipse.designer.parser.ParseFactory.getRootContext(ParseFactory.java:117)
org.eclipse.wb.internal.core.parser.JavaInfoParser.parse(JavaInfoParser.java:242)中的

在org.eclipse.wb.internal.core.parser.J avaInfoParser.access $ 9(JavaInfoParser.java:238)
在org.eclipse.wb.internal.core.parser.JavaInfoParser $ 1.runObject(JavaInfoParser.java:153)
在org.eclipse.wb。 internal.core.parser.JavaInfoParser $ 1.runObject(JavaInfoParser.java:1)
在org.eclipse.wb.internal.core.utils.execution.ExecutionUtils.runDesignTime(ExecutionUtils.java:159)
at org.eclipse.wb.internal.core.parser.JavaInfoParser.parse(JavaInfoParser.java:151)
在org.eclipse.wb.internal.core.editor.DesignPage.internal_refreshGEF(DesignPage.java:534)
在org.eclipse.wb.internal.core.editor.DesignPage.access $ 9(DesignPage.java:522)
在org.eclipse.wb.internal.core.editor.DesignPage $ 8 $ 1.run (DesignPage.java:449)
在org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:187)
在org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java :156)
在org.eclipse.swt.widgets.Display.syncExec(Display.java:4721)
在org.eclipse.wb.interna l.core.editor.DesignPage $ 8.run(DesignPage.java:446)
在org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:466)
在org.eclipse.jface .operation.ModalContext.run(ModalContext.java:374)
在org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:527)
在org.eclipse.wb.internal.core .editor.DesignPage.internal_refreshGEF_withProgress(DesignPage.java:465)
在org.eclipse.wb.internal.core.editor.DesignPage.internal_refreshGEF(DesignPage.java:415)
在org.eclipse.wb .internal.core.editor.UndoManager.refreshDesignerEditor(UndoManager.java:381)
在org.eclipse.wb.internal.core.editor.DesignPage.refreshGEF(DesignPage.java:392)
在org .eclipse.wb.internal.core.editor.actions.RefreshAction.run(RefreshAction.java:46)
在org.eclipse.wb.internal.core.editor.actions.DesignPageAction.run(DesignPageAction.java: 34)
在org.eclipse.wb.internal.core.editor.errors.JavaWarningCom posite.doRefresh(JavaWarningComposite.java:42)
在org.eclipse.wb.internal.core.editor.errors.WarningComposite $ 1.widgetSelected(WarningComposite.java:93)
在org.eclipse.swt .widgets.TypedListener.handleEvent(TypedListener.java:248)
在org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
在org.eclipse.swt.widgets.Display .sendEvent(Display.java:4188)
在org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1467)
在org.eclipse.swt.widgets.Widget.sendEvent(Widget .java:1490)
在org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1475)
在org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:1279 )
在org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4031)
在org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3658)
在org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine $ 9.run(PartRenderingEngine.java:1151)
在org.eclipse.core.databinding.o bservable.Realm.runWithDefault(Realm.java:332)
在org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032)
在org.eclipse。 e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:148)
在org.eclipse.ui.internal.Workbench $ 5.run(Workbench.java:636)
在org.eclipse .create.observable.Realm.runWithDefault .PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
在org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:135)
在org.eclipse.equinox.internal .app.EclipseAppHandle.run(EclipseAppHandle.java:196)
在org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
在org.eclipse.core .runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)$在$ org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:236)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java :43)
在java.lang.reflect.Method.invoke(Method.java:606)
在org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
在org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
在org.eclipse.equinox.launcher.Main.run(Main.java:1465)
完整的上下文堆栈trace:

java.lang.NoSuchMethodError:com.google.gwt.dev.cfg.ModuleDefLoader.loadFromClassPath(Lcom / google / gwt / core / ext / TreeLogger; Ljava / lang / String; Z) LCOM /谷歌/ GWT的/ dev / cfg中/ ModuleDef;
com.google.gwt.dev.shell.designtime.HostedModeSupportImpl.loadModule(HostedModeSupportImpl.java:85)
com.google.gwt.dev.shell.designtime.HostedModeSupportImpl.createModuleSpaceHost(HostedModeSupportImpl。 java:64)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl。在org.eclipse.wb.internal.core.utils.reflect.ReflectionUtils中调用(DelegatingMethodMethodMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:606)
。 invokeMethod(ReflectionUtils.java:869)
在com.google.gdt.eclipse.designer.hosted.tdt.HostedModeSupport.createModuleSpaceHost(HostedModeSupport.java:451)
在com.google.gwt.dev。 shell.designtime.ModuleSpace。< init>(ModuleSpace.java:60)
在com.google.gdt.eclipse.designer.webkit.jsni.ModuleSpaceWebKit。< init>(ModuleSpaceWebKit.java:45)
com.google.gdt.eclipse.designer.webkit.BrowserShellWebKit.setUrl(BrowserShellWebKit.java:85)
在com.google.gdt.eclipse.designer.hosted.tdt.HostedModeSupport.startup(HostedModeSupport.java :184)
在com.google.gdt.eclipse.designer.model.widgets.support.GwtState.initialize0(GwtState.java:248)
在com.google.gdt.eclipse.designer.model .getClassLoader .wb.internal.core.parser.AbstractParseFactory.initializeClassLoader(AbstractParseFactory.java:732)
在com.google.gdt.eclipse.designer.parser.ParseFactory.getRootContext(ParseFactory.java:117)
org.eclipse.wb.internal.core.parser.JavaInfoParser.parse(JavaInfoParser.java:242)中的

在org.eclipse.wb.internal.core.parser.J avaInfoParser.access $ 9(JavaInfoParser.java:238)
在org.eclipse.wb.internal.core.parser.JavaInfoParser $ 1.runObject(JavaInfoParser.java:153)
在org.eclipse.wb。 internal.core.parser.JavaInfoParser $ 1.runObject(JavaInfoParser.java:1)
在org.eclipse.wb.internal.core.utils.execution.ExecutionUtils.runDesignTime(ExecutionUtils.java:159)
at org.eclipse.wb.internal.core.parser.JavaInfoParser.parse(JavaInfoParser.java:151)
在org.eclipse.wb.internal.core.editor.DesignPage.internal_refreshGEF(DesignPage.java:534)
在org.eclipse.wb.internal.core.editor.DesignPage.access $ 9(DesignPage.java:522)
在org.eclipse.wb.internal.core.editor.DesignPage $ 8 $ 1.run (DesignPage.java:449)
在org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:187)
在org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java :156)
在org.eclipse.swt.widgets.Display.syncExec(Display.java:4721)
在org.eclipse.wb.interna l.core.editor.DesignPage $ 8.run(DesignPage.java:446)
在org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:466)
在org.eclipse.jface .operation.ModalContext.run(ModalContext.java:374)
在org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:527)
在org.eclipse.wb.internal.core .editor.DesignPage.internal_refreshGEF_withProgress(DesignPage.java:465)
在org.eclipse.wb.internal.core.editor.DesignPage.internal_refreshGEF(DesignPage.java:415)
在org.eclipse.wb .internal.core.editor.UndoManager.refreshDesignerEditor(UndoManager.java:381)
在org.eclipse.wb.internal.core.editor.DesignPage.refreshGEF(DesignPage.java:392)
在org .eclipse.wb.internal.core.editor.actions.RefreshAction.run(RefreshAction.java:46)
在org.eclipse.wb.internal.core.editor.actions.DesignPageAction.run(DesignPageAction.java: 34)
在org.eclipse.wb.internal.core.editor.errors.JavaWarningCom posite.doRefresh(JavaWarningComposite.java:42)
在org.eclipse.wb.internal.core.editor.errors.WarningComposite $ 1.widgetSelected(WarningComposite.java:93)
在org.eclipse.swt .widgets.TypedListener.handleEvent(TypedListener.java:248)
在org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
在org.eclipse.swt.widgets.Display .sendEvent(Display.java:4188)
在org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1467)
在org.eclipse.swt.widgets.Widget.sendEvent(Widget .java:1490)
在org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1475)
在org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:1279 )
在org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4031)
在org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3658)
在org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine $ 9.run(PartRenderingEngine.java:1151)
在org.eclipse.core.databinding.o bservable.Realm.runWithDefault(Realm.java:332)
在org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032)
在org.eclipse。 e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:148)
在org.eclipse.ui.internal.Workbench $ 5.run(Workbench.java:636)
在org.eclipse .create.observable.Realm.runWithDefault .PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
在org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:135)
在org.eclipse.equinox.internal .app.EclipseAppHandle.run(EclipseAppHandle.java:196)
在org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
在org.eclipse.core .runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)$在$ org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:236)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java :43)
在java.lang.reflect.Method.invoke(Method.java:606)
在org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
在org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
在org.eclipse.equinox.launcher.Main.run(Main.java:1465)
解决方案

您的设计师版本不支持gwt-2.7.0,尝试降级你的版本的gwt,我想到2.5.x。



似乎这个 commit 破坏了设计师,因为它改变了加载模块所需的签名方法,可能这不是唯一的破坏。



设计师的状态现在不是很清楚,没有维护者,因此它没有收到更新,可能会是已停止如果没有社区计划。


I've imported a Maven project into Eclipse and tried to open a subclass of com.google.gwt.core.client.EntryPoint using the WindowBuilder Editor. The WindowBuilder Editor gave me this error:

No GWT module found
GWT widgets can be used only in client package of GWT module.

My environment:

  • Eclipse version: Luna (from Eclipse => About Eclipse)
  • WindowBuilder: 1.7.0r44 (from Help => Installation Details)
  • GWT Designer: 3.1.3r44 (from Help => Installation Details)

Now, I'm not sure how the environment is affected by the settings in my project's POM.xml so I'll include my POM.xml as well:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>com.netbase.nbsocialmetrics</groupId>
    <artifactId>SocialMetrics</artifactId>    
    <version>1.0</version>
  </parent>

  <groupId>com.netbase.nbsocialmetrics</groupId>
  <artifactId>nbsocialmetrics-frontend</artifactId>
  <packaging>war</packaging>
  <version>1.0</version>

  <name>nbsocialmetrics-frontend</name>

  <properties>
    <!-- Convenience property to set the GWT version -->
    <gwtVersion>2.7.0-rc1</gwtVersion>

    <!-- GWT needs at least java 1.6 -->
    <maven.compiler.source>1.7</maven.compiler.source>
    <maven.compiler.target>1.7</maven.compiler.target>

    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

  <!-- For GWT -->
  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>com.google.gwt</groupId>
        <artifactId>gwt</artifactId>
        <version>${gwtVersion}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>

  <dependencies>
    <!-- Compile/runtime dependencies -->
    <dependency>
      <groupId>com.google.appengine</groupId>
      <artifactId>appengine-api-1.0-sdk</artifactId>
      <version>${appengine.target.version}</version>
    </dependency>
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>servlet-api</artifactId>
      <version>2.5</version>
      <scope>provided</scope>
    </dependency>
    <dependency>
      <groupId>jstl</groupId>
      <artifactId>jstl</artifactId>
      <version>1.2</version>
    </dependency>
    <dependency>
      <groupId>com.googlecode.objectify</groupId>
      <artifactId>objectify</artifactId>
      <version>5.1.1</version>
    </dependency>

    <!-- For GWT -->
    <dependency>
      <groupId>com.google.gwt</groupId>
      <artifactId>gwt-servlet</artifactId>
      <scope>runtime</scope>
    </dependency>
    <dependency>
      <groupId>com.google.gwt</groupId>
      <artifactId>gwt-user</artifactId>
      <scope>provided</scope>
    </dependency>
    <dependency>
      <groupId>com.google.gwt</groupId>
      <artifactId>gwt-dev</artifactId>
      <scope>provided</scope>
    </dependency>

    <!-- Test Dependencies -->
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.11</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.mockito</groupId>
      <artifactId>mockito-all</artifactId>
      <version>1.9.0</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>com.google.appengine</groupId>
      <artifactId>appengine-testing</artifactId>
      <version>${appengine.target.version}</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>com.google.appengine</groupId>
      <artifactId>appengine-api-stubs</artifactId>
      <version>${appengine.target.version}</version>
      <scope>test</scope>
    </dependency>
  </dependencies>

  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <version>2.5.1</version>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
          <source>1.7</source>
          <target>1.7</target>
        </configuration>
      </plugin>

      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-war-plugin</artifactId>
        <version>2.3</version>
      </plugin>

      <plugin>
        <groupId>com.google.appengine</groupId>
        <artifactId>appengine-maven-plugin</artifactId>
        <version>${appengine.target.version}</version>
      </plugin>

      <!-- For GWT -->
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>gwt-maven-plugin</artifactId>
        <version>2.7.0-rc1</version>
        <executions>
          <execution>
            <goals>
              <goal>compile</goal>
              <goal>test</goal>
              <goal>generateAsync</goal>
            </goals>
          </execution>
        </executions>
        <!-- Plugin configuration. There are many available options, see 
          gwt-maven-plugin documentation at codehaus.org -->
        <configuration>
          <runTarget>MyGWTModule.html</runTarget>
          <modules>
            <module>com.netbase.GWTArchetype.MyGWTModule</module>
          </modules>
        </configuration>
      </plugin>

    </plugins>
  </build>

</project>

Over at http://forums.instantiations.com/topic-11-1710.html I read a workaround was: "The workaround is easy, just copy the file from src/main/resources to src/main/java but it's really annoying not to use the standard structure for my project." I tried that but it just led to a different error:

Internal Error

encountered unexpected internal error.

This could be caused by a bug or by a misconfiguration issue, conflict, partial update, etc.

java.lang.NoSuchMethodError: com.google.gwt.dev.cfg.ModuleDefLoader.loadFromClassPath(Lcom/google/gwt/core/ext/TreeLogger;Ljava/lang/String;Z)Lcom/google/gwt/dev/cfg/ModuleDef;

Hide stack trace.
Stack trace:

java.lang.NoSuchMethodError: com.google.gwt.dev.cfg.ModuleDefLoader.loadFromClassPath(Lcom/google/gwt/core/ext/TreeLogger;Ljava/lang/String;Z)Lcom/google/gwt/dev/cfg/ModuleDef;
    at com.google.gwt.dev.shell.designtime.HostedModeSupportImpl.loadModule(HostedModeSupportImpl.java:85)
    at com.google.gwt.dev.shell.designtime.HostedModeSupportImpl.createModuleSpaceHost(HostedModeSupportImpl.java:64)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.eclipse.wb.internal.core.utils.reflect.ReflectionUtils.invokeMethod(ReflectionUtils.java:869)
    at com.google.gdt.eclipse.designer.hosted.tdt.HostedModeSupport.createModuleSpaceHost(HostedModeSupport.java:451)
    at com.google.gwt.dev.shell.designtime.ModuleSpace.<init>(ModuleSpace.java:60)
    at com.google.gdt.eclipse.designer.webkit.jsni.ModuleSpaceWebKit.<init>(ModuleSpaceWebKit.java:45)
    at com.google.gdt.eclipse.designer.webkit.BrowserShellWebKit.setUrl(BrowserShellWebKit.java:85)
    at com.google.gdt.eclipse.designer.hosted.tdt.HostedModeSupport.startup(HostedModeSupport.java:184)
    at com.google.gdt.eclipse.designer.model.widgets.support.GwtState.initialize0(GwtState.java:248)
    at com.google.gdt.eclipse.designer.model.widgets.support.GwtState.initialize(GwtState.java:206)
    at com.google.gdt.eclipse.designer.parser.ParseFactory.getClassLoader(ParseFactory.java:429)
    at org.eclipse.wb.internal.core.parser.AbstractParseFactory.initializeClassLoader(AbstractParseFactory.java:732)
    at com.google.gdt.eclipse.designer.parser.ParseFactory.getRootContext(ParseFactory.java:117)
    at org.eclipse.wb.internal.core.parser.JavaInfoParser.prepareParseContext(JavaInfoParser.java:1182)
    at org.eclipse.wb.internal.core.parser.JavaInfoParser.parse(JavaInfoParser.java:242)
    at org.eclipse.wb.internal.core.parser.JavaInfoParser.access$9(JavaInfoParser.java:238)
    at org.eclipse.wb.internal.core.parser.JavaInfoParser$1.runObject(JavaInfoParser.java:153)
    at org.eclipse.wb.internal.core.parser.JavaInfoParser$1.runObject(JavaInfoParser.java:1)
    at org.eclipse.wb.internal.core.utils.execution.ExecutionUtils.runDesignTime(ExecutionUtils.java:159)
    at org.eclipse.wb.internal.core.parser.JavaInfoParser.parse(JavaInfoParser.java:151)
    at org.eclipse.wb.internal.core.editor.DesignPage.internal_refreshGEF(DesignPage.java:534)
    at org.eclipse.wb.internal.core.editor.DesignPage.access$9(DesignPage.java:522)
    at org.eclipse.wb.internal.core.editor.DesignPage$8$1.run(DesignPage.java:449)
    at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:187)
    at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:156)
    at org.eclipse.swt.widgets.Display.syncExec(Display.java:4721)
    at org.eclipse.wb.internal.core.editor.DesignPage$8.run(DesignPage.java:446)
    at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:466)
    at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:374)
    at org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:527)
    at org.eclipse.wb.internal.core.editor.DesignPage.internal_refreshGEF_withProgress(DesignPage.java:465)
    at org.eclipse.wb.internal.core.editor.DesignPage.internal_refreshGEF(DesignPage.java:415)
    at org.eclipse.wb.internal.core.editor.UndoManager.refreshDesignerEditor(UndoManager.java:381)
    at org.eclipse.wb.internal.core.editor.DesignPage.refreshGEF(DesignPage.java:392)
    at org.eclipse.wb.internal.core.editor.actions.RefreshAction.run(RefreshAction.java:46)
    at org.eclipse.wb.internal.core.editor.actions.DesignPageAction.run(DesignPageAction.java:34)
    at org.eclipse.wb.internal.core.editor.errors.JavaWarningComposite.doRefresh(JavaWarningComposite.java:42)
    at org.eclipse.wb.internal.core.editor.errors.WarningComposite$1.widgetSelected(WarningComposite.java:93)
    at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:248)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4188)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1467)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1490)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1475)
    at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:1279)
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4031)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3658)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1151)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032)
    at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:148)
    at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:636)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:579)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:135)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:382)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:236)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1465)
Full context stack trace:

java.lang.NoSuchMethodError: com.google.gwt.dev.cfg.ModuleDefLoader.loadFromClassPath(Lcom/google/gwt/core/ext/TreeLogger;Ljava/lang/String;Z)Lcom/google/gwt/dev/cfg/ModuleDef;
    at com.google.gwt.dev.shell.designtime.HostedModeSupportImpl.loadModule(HostedModeSupportImpl.java:85)
    at com.google.gwt.dev.shell.designtime.HostedModeSupportImpl.createModuleSpaceHost(HostedModeSupportImpl.java:64)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.eclipse.wb.internal.core.utils.reflect.ReflectionUtils.invokeMethod(ReflectionUtils.java:869)
    at com.google.gdt.eclipse.designer.hosted.tdt.HostedModeSupport.createModuleSpaceHost(HostedModeSupport.java:451)
    at com.google.gwt.dev.shell.designtime.ModuleSpace.<init>(ModuleSpace.java:60)
    at com.google.gdt.eclipse.designer.webkit.jsni.ModuleSpaceWebKit.<init>(ModuleSpaceWebKit.java:45)
    at com.google.gdt.eclipse.designer.webkit.BrowserShellWebKit.setUrl(BrowserShellWebKit.java:85)
    at com.google.gdt.eclipse.designer.hosted.tdt.HostedModeSupport.startup(HostedModeSupport.java:184)
    at com.google.gdt.eclipse.designer.model.widgets.support.GwtState.initialize0(GwtState.java:248)
    at com.google.gdt.eclipse.designer.model.widgets.support.GwtState.initialize(GwtState.java:206)
    at com.google.gdt.eclipse.designer.parser.ParseFactory.getClassLoader(ParseFactory.java:429)
    at org.eclipse.wb.internal.core.parser.AbstractParseFactory.initializeClassLoader(AbstractParseFactory.java:732)
    at com.google.gdt.eclipse.designer.parser.ParseFactory.getRootContext(ParseFactory.java:117)
    at org.eclipse.wb.internal.core.parser.JavaInfoParser.prepareParseContext(JavaInfoParser.java:1182)
    at org.eclipse.wb.internal.core.parser.JavaInfoParser.parse(JavaInfoParser.java:242)
    at org.eclipse.wb.internal.core.parser.JavaInfoParser.access$9(JavaInfoParser.java:238)
    at org.eclipse.wb.internal.core.parser.JavaInfoParser$1.runObject(JavaInfoParser.java:153)
    at org.eclipse.wb.internal.core.parser.JavaInfoParser$1.runObject(JavaInfoParser.java:1)
    at org.eclipse.wb.internal.core.utils.execution.ExecutionUtils.runDesignTime(ExecutionUtils.java:159)
    at org.eclipse.wb.internal.core.parser.JavaInfoParser.parse(JavaInfoParser.java:151)
    at org.eclipse.wb.internal.core.editor.DesignPage.internal_refreshGEF(DesignPage.java:534)
    at org.eclipse.wb.internal.core.editor.DesignPage.access$9(DesignPage.java:522)
    at org.eclipse.wb.internal.core.editor.DesignPage$8$1.run(DesignPage.java:449)
    at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:187)
    at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:156)
    at org.eclipse.swt.widgets.Display.syncExec(Display.java:4721)
    at org.eclipse.wb.internal.core.editor.DesignPage$8.run(DesignPage.java:446)
    at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:466)
    at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:374)
    at org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:527)
    at org.eclipse.wb.internal.core.editor.DesignPage.internal_refreshGEF_withProgress(DesignPage.java:465)
    at org.eclipse.wb.internal.core.editor.DesignPage.internal_refreshGEF(DesignPage.java:415)
    at org.eclipse.wb.internal.core.editor.UndoManager.refreshDesignerEditor(UndoManager.java:381)
    at org.eclipse.wb.internal.core.editor.DesignPage.refreshGEF(DesignPage.java:392)
    at org.eclipse.wb.internal.core.editor.actions.RefreshAction.run(RefreshAction.java:46)
    at org.eclipse.wb.internal.core.editor.actions.DesignPageAction.run(DesignPageAction.java:34)
    at org.eclipse.wb.internal.core.editor.errors.JavaWarningComposite.doRefresh(JavaWarningComposite.java:42)
    at org.eclipse.wb.internal.core.editor.errors.WarningComposite$1.widgetSelected(WarningComposite.java:93)
    at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:248)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4188)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1467)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1490)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1475)
    at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:1279)
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4031)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3658)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1151)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032)
    at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:148)
    at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:636)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:579)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:135)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:382)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:236)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1465)

Are there instructions for importing a Maven project containing GWT and then using WindowBuilder Editor? Or does anyone know what I'm doing wrong?

解决方案

Your designer version does not support gwt-2.7.0, try downgrading your version of gwt, I think to 2.5.x.

It seems that this commit broke the designer because it changed a signature method that it needs for loading a module, might be this is not the only breakage.

The status of the designer is not quite clear right now, there is no maintainer for it so it is not receiving updates, and probably it would be discontinued if there is no community initiative.

这篇关于错误“找不到GWT模块”为Maven项目导入到Eclipse的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆