GWT/SuperDevModeOld

Super Dev Mode

以下ではEclipse Luna、GWT2.7、Google Plugin for Eclipse 4.4を前提としている。

Dev Modeの問題点

Dev ModeとSuper Dev Modeの違い

※参考にあげたリンクより

ただし、以下のデメリットもある

※特に注意すべき点

Super Dev Mode使用の準備

Dev Modeで開発していたプロジェクトをSuper Dev Mode用にするには、何点か書き換えを行う必要がある。これはGWT2.7以前からGWT2.7への対応も含まれる。

  <define-property name="gwt.logging.popupHandler" values="ENABLED, DISABLED" />
  <define-property name="gwt.logging.firebugHandler" values="ENABLED, DISABLED" />

    <!-- allow Super Dev Mode -->
    <add-linker name="xsiframe" />
    <!-- allow source maps -->
    <set-property name="compiler.useSourceMaps" value="true" />
    <set-configuration-property name="includeSourceMapUrl" value="true"/>

通常の利用

初回起動

ブラウザに「再コンパイル」ボタンを置く

起動すると、Consoleの方に

The code server is ready at http://127.0.0.1:9876/

という表示がされる。このURLにアクセスすると「Dev Mode On」「Dev Mode Off」というボタンが表示されるので「Off」の方をブックマークして、「GWT再コンパイル」などという名前をつける(なぜかOnの方はうまく動作しない)。GWTマニュアルでは、「再コンパイルボタン」は自動的に表示されるとあるが、なぜか表示されないためこうする。

デバッグ対象の表示

Development Modeの方に

http://127.0.0.1:9876/Test.html

あるいは、起動URLをルートにしている場合

http://127.0.0.1:9876/

などという表示がされるので、ここにアクセスする。この時、目的画面が表示される以前に「Compiling ...」という表示がされ若干待たされる。

クライアントの再コンパイル

起動したままクライアントコードを変更し、「GWT再コンパイル」ボタンで再コンパイルすることができる。もちろん、画面はリロードされてしまうことに注意。 このときはそれほど待たされることはない。

デバッグ

サーバ側

サーバ側のデバッグはこれまで通り。Eclipseのデバッガでデバッグを行うことができ、またサーバコードを変更した場合、再起動しなければそれは反映されない。 「GWT再コンパイル」ボタンはクライアントコード用であるので、これを押しても無意味。

クライアント側

クライアント側のデバッグはEclipseでは不可能になった。

これは研究中

ログ出力

サーバ側はこれまで通り。クライアント側のログ出力はコンソールには出力されなくなった。つまり、java.util.logging.Loggerを使用してログを出力した場合、それはデバッガで表示させる必要がある(本番環境と同じ)。Firefoxの場合には、FireBugのコンソールに出力される。chromeでもほぼ同様。

参考ほか

last edited 2016-11-08 05:57:06 by ysugimura