私のプロジェクト構造
コア プロジェクト(別のモジュール .xml ファイルがあります) CoreProject.gwt.xml (エントリ ポイントが定義されていません)
抽象エントリポイントクラスがあり、このコアプロジェクトはで使用されます
Project A
(モジュール .xml ファイルで Core Project を継承します。これにはエントリ ポイント クラスがあります)
ProjectA.gwt.xml および ProjectA EntryPoint は、Abstract CoreProject EntryPoint Class を直接拡張します。
そのため、「プロジェクト A」をスーパー開発モードの Java アプリケーションとして実行しようとすると (実行構成のクラスパスとソース タブにコア プロジェクトを追加しました)。
そして私のプログラムの引数は
お気に入り
-src src/ com.xxx.CoreProject com.xxxx.ProjectA
出力は、CoreProject を正常にコンパイルします。しかし、「ProjectA」に関しては。それはエラーをスローします。
ProjectA エントリポイント クラスでエラーが発生しました。CoreProject エントリ ポイントのソースが見つかりません。モジュールの継承を忘れていませんか。
私の作業環境: 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>
プロジェクト A のエントリ ポイント
public class ProjectA extends CoreProject {
/// Implemented Logic for those abstract methods.
}