我的项目结构
核心项目(它有单独的模块.xml文件) CoreProject.gwt.xml(它没有定义任何入口点)
它有抽象入口点类这个核心项目用于
项目A (它在模块.xml文件中继承了Core Project。这有入口点类) 的 ProjectA.gwt.xml ProjectA EntryPoint直接扩展了Abstract CoreProject EntryPoint类。
所以,当我尝试运行"项目A"作为超级开发模式的java应用程序(我在运行配置的类路径和源选项卡中添加了Core Project)
我的程序参数是
喜欢
-src src / com.xxx.CoreProject com.xxxx.ProjectA
所以输出是,它成功编译了CoreProject。但是当谈到" ProjectA"。它会引发错误。
ProjectA入口点类中的错误。无法找到CoreProject Entry Point的源代码。 你忘了继承这个模块吗?
我的工作环境: Eclipse Kepler。
....示例代码.....
CoreProject.gwt.xml
<module rename-to='CoreProject'>
<!-- Inherit the core Web Toolkit stuff. -->
<inherits name="com.xxxxxx.AppsCommonNoTheme" />
<!-- inherits name="com.smartgwt.SmartGwtNoScript"/ -->
<inherits name="com.smartgwt.tools.SmartGwtTools" />
<!-- Specify the paths for translatable code -->
<source path='client' />
<source path='shared' />
<set-configuration-property name='xsiframe.failIfScriptTag' value='FALSE'/>
<script src='scripts/jquery-1.6.4.js' />
<script src='scripts/strophe.js' />
<script src='scripts/bwboshconnector.js' />
<add-linker name="xsiframe" />
</module>
CoreProject入口点类
public abstract class CoreProject implements EntryPoint {
// abstractMethods
public void onModuleLoad() {
// Code to Call those abstract Methods.
}
}
ProjectA gwt xml文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit 1.7.0//EN" "http://google-web-toolkit.googlecode.com/svn/tags/1.7.0/distro-source/core/src/gwt-module.dtd">
<module rename-to="ProjectA">
<!-- Inherit the core Web Toolkit stuff. -->
<inherits name="com.xxxx.CoreProject" />
<entry-point class='com.xxxxx.ProjectA ' />
<!-- Specify the paths for translatable code -->
<source path='client' />
<source path='shared' />
<set-configuration-property name="devModeRedirectEnabled" value="true" />
<set-configuration-property name='xsiframe.failIfScriptTag' value='FALSE'/>
<add-linker name="xsiframe" />
</module>
项目入口点
public class ProjectA extends CoreProject {
/// Implemented Logic for those abstract methods.
}