检查模块的继承链;它可能未继承所需的模块,或者模块未正确添加其源路径条目

pbh*_*hle 5 gwt maven-2

我想用多个gwt模块创建一个gwt maven项目。其中一些只是实用程序模块,意味着它们没有入口点。基本上我已经有一个包含多个gwt模块的gwt项目,并且已经将其转换为maven,但是在编译时却出现以下异常:

[错误]找不到类型'in.appops.showcase.web.gwt.uploadservice.client.UploadService'[信息] [错误]提示:以前的编译器错误可能使这种类型不可用[信息] [错误]提示:检查您模块的继承链;它可能未继承所需的模块,或者模块未正确添加其源路径条目

我的项目有core和dispath模块,它们是没有入口点的实用程序模块,而其他uploadservice模块的入口点继承了core模块。

因此,我将core.gwt.xml,dispatch.get.xml放入其包中,即src / main / java本身,并将uploadservice.gwt.xml放入maven的资源文件夹中。同样在pom.xml中,我提供了要编译的模块:

<configuration>
                    <lifecycleMappingMetadata>
                        <pluginExecutions>
                            <pluginExecution>
                                <pluginExecutionFilter>
                                    <groupId>org.codehaus.mojo</groupId>
                                    <artifactId>gwt-maven-plugin</artifactId>
                                    <version>2.4.0</version>
                                    <goals>
                                        <goal>clean</goal>
                                        <goal>resources</goal>
                                        <goal>compile</goal>
                                        <goal>i18n</goal>
                                        <goal>generateAsync</goal>
                                    </goals>
                                    <configuration>
                                        <runTarget>Index.html</runTarget>
                                        <hostedWebapp>${webappDirectory}</hostedWebapp>
                                         <modules>
                                            <!-- <module>platform.bindings.web.gwt.dispatch.Dispatch</module>
                                             <module>platform.core.Core</module>   -->
                                            <module>showcase.web.gwt.addressbook.AddressBook</module>
                                            <module>showcase.web.gwt.uploadservice.UploadService</module>
                                        </modules> 
                                    </configuration>
                                </pluginExecutionFilter>
                                <action>
                                    <execute />
                                </action>
                            </pluginExecution>
                        </pluginExecutions>
                    </lifecycleMappingMetadata>
                </configuration>
Run Code Online (Sandbox Code Playgroud)

谁能帮助我摆脱这种例外情况。我是否需要提供命令来编译模块或其他内容?

app*_*tup 5

注 1 - 当使用 gwt 标准方法时,您的文件夹结构

    src/main/java/showcase/web/gwt/yourmodule/yourmodule.gwt.xml
    src/main/java/showcase/web/gwt/yourmodule/client 
    src/main/java/showcase/web/gwt/yourmodule/public 

Your pom references 
    <module>showcase.web.gwt.addressbook.AddressBook</module>
    <module>showcase.web.gwt.uploadservice.UploadService</module>

Your .gwt.xml file location
    src/main/java/showcase/web/gwt/addressbook/AddressBook.gwt.xml
    src/main/java/showcase/web/gwt/uploadservice/UploadService.gwt.xml
Run Code Online (Sandbox Code Playgroud)

注 2 - <lifecycleMappingMetadata>适用于您的 m2e = maven eclipse 插件。有关 GWT MAVEN POM 示例的清晰示例 - http://code.google.com/p/google-web-toolkit/source/browse/trunk/samples/validation/pom.xml

注 3 - 完全遵循 gwt maven 示例项目的极其简单的示例 - http://code.google.com/p/google-web-toolkit/source/browse/trunk/samples/validation/

不要更改文件夹位置。*遵循命名约定。* 即使像 public、client 这样的文件夹名称在 GWT 中也是按“名称”选取的。