错误“找不到GWT模块”为Maven项目导入到Eclipse [英] Error "No GWT module found" for Maven project imported into 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的Maven项目,然后使用WindowBuilder编辑器?或者有人知道我在做错什么?解决方案您的设计师版本不支持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屋!