0

我有一个具有以下结构的项目:

com.myapp.gwt:
    Basic.gwt.xml
    Launcher.gwt.xml - inherits Basic.gwt.xml
    Module1.gwt.xml - inherits Basic.gwt.xml
com.myapp.gwt.ui.basic.client:
    AppActivityMapper.java
    AppHistoryManager.java
    AppPlaceHistoryMapper.java
    BasicInitializer.java - this is a daddy class for all entry points
    MainClientFactory.java
    MainClientFactoryImpl.java
com.myapp.gwt.ui.launcher.client: - all the stuff for the launcher module is here
    LauncherInitializer.java (extends BasicInitializer, launcher module's EntryPoint)
com.myapp.gwt.ui.launcher.client.places:
    Places and activities for the launcher module
com.myapp.gwt.ui.module1.client: - all the stuff for the module1 module is here
    Module1Initializer.java (extends BasicInitializer, module1 module's EntryPoint)
com.myapp.gwt.ui.module1.client.places:
    Places and activities for the module1 module
com.myapp.gwt.shared:
    Stuff shared between the client and the server (interfaces, dtos)
com.myapp.gwt.server:
    Code that works only on the server

我在 Basic.gwt.xml 中的内容是:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit 2.1.0//EN" "http://google-web-toolkit.googlecode.com/svn/tags/2.3.0/distro-source/core/src/gwt-module.dtd">
<module  rename-to='myapp'>
    <!-- Inherit the core Web Toolkit stuff. -->
    <inherits name='com.google.gwt.user.User' />

    <!-- Inherit the default GWT style sheet. You can change -->
    <!-- the theme of your GWT application by uncommenting -->
    <!-- any one of the following lines. -->
    <inherits name='com.google.gwt.user.theme.clean.Clean' />

    <inherits name="com.google.gwt.place.Place" />
    <inherits name="com.google.gwt.activity.Activity" />
    <inherits name="com.google.gwt.editor.Editor" />

    <!-- Specify the paths for translatable code -->
    <source path='ui.basic.client' />
    <source path='shared' />

    <replace-with class="com.myapp.gwt.ui.basic.client.ClientFactoryImpl">
        <when-type-is class="com.myapp.gwt.ui.basic.client.ClientFactory" />
    </replace-with>

<set-configuration-property name="UiBinder.useSafeHtmlTemplates" value="true" />
</module>

我在 Launcher.gwt.xml 中的内容是:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit 2.1.0//EN" "http://google-web-toolkit.googlecode.com/svn/tags/2.3.0/distro-source/core/src/gwt-module.dtd">
<module  rename-to='launcher'>

    <!-- Other module inherits -->
    <inherits name="com.myapp.gwt.Basic" />

    <!-- Specify the paths for translatable code -->
    <source path="ui.launcher.client"></source>

    <!-- Specify the app entry point class. -->
    <entry-point class='com.myapp.gwt.ui.launcher.client.LauncherInitializer' />

</module>

我在包内的com.myapp.gwt.ui.basic.client所有类都没有引用其他模块包内的任何类。另一方面,其他模块包有很多对基本模块的引用,一些类甚至扩展了基本包内的类。

问题是我在编译到 javascript 启动器模块时遇到了这个错误:

[TRACE] [launcher] - 查找入口点类
[错误] [启动器] - 找不到类型“com.myapp.gwt.ui.launcher.client.LauncherInitializer”
[ERROR] [launcher] - 提示:以前的编译器错误可能导致此类型不可用
[错误] [启动器] - 提示:检查模块的继承链;它可能没有继承所需的模块,或者模块可能没有正确添加其源路径条目
[错误] [启动器] - 无法从 localhost:61253 的用户代理“Mozilla/5.0 (Windows NT 6.1; WOW64; rv:5.0) Gecko/20100101 Firefox/5.0”加载模块“启动器”

如果您发现我所做的事情有什么值得改变的地方,请告诉我。

4

1 回答 1

3

只是一个快速的猜测:你尝试过吗:<source path='ui/basic/client' />

于 2011-09-22T13:55:59.680 回答