2011-09-22 26 views
0

我有以下结构的项目:GWT - 无法找到类型“com.myapp.launcher.client.LauncherInitializer”多模块结构

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] - Finding entry point classes 
[ERROR] [launcher] - Unable to find type 'com.myapp.gwt.ui.launcher.client.LauncherInitializer' 
[ERROR] [launcher] - Hint: Previous compiler errors may have made this type unavailable 
[ERROR] [launcher] - Hint: Check the inheritance chain from your module; it may not be inheriting a required module or a module may not be adding its source path entries properly 
[ERROR] [launcher] - Failed to load module 'launcher' from user agent 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:5.0) Gecko/20100101 Firefox/5.0' at localhost:61253 

也请告诉我,如果你看到的东西值得的东西,我已经做了改变。

回答

3

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

+0

笑:d我觉得自己是个白痴:d谢谢:) –