EclipseでCodeServerを外部ツールとして実行しています(注意-まだ何とかしてhtmlファイルをサーバー化する必要がありますが、これはまだ実行していませんが、これによりコードサーバーが実行されるようです)。CodeServerをEclipseの外部ツールとしてセットアップするには、
0)module.gwt.xmlファイルも更新して、スーパー開発モードのブックマークレットを許可し、デバッグ用のソースマップを有効にする必要があることを忘れないでください。これらのいいねをmodule.gwt.xmlファイルに追加します。
<!-- enable the SuperDevMode book marklets -->
<add-linker name="xsiframe"/>
<set-configuration-property name="devModeRedirectEnabled" value="true"/>
<!-- enable source maps -->
<set-property name="compiler.useSourceMaps" value="true" />
1)[外部ツール]/[外部ツールの構成]ダイアログを開きます。これは、Windowsのトップレベルの[ファイル名を指定して実行]メニューの下にあります。
2)左側のリストで[プログラム]を選択して新しい構成を作成し、[新規]ボタンを押します(ドキュメントのように見えます)。ダイアログで構成に名前を付けます。
3)java.exeファイルへのパスは、[場所:]ボックスに入力されます。パスがわからない場合は、[ファイルシステムの参照]ボタンを使用してファイルシステムを見つけることができます。
4)作業ディレクトリを空白のままにしました。これが重要かどうかはわかりません。それがなくても動作するようです。これを設定する必要があるかどうかを確実に知っている人はいますか?
5)「引数:」ボックスの作業の大部分。gwt-dev.jar、gwt.user.jar、gwt-codeserver.jar、およびソースディレクトリへのパスを含むクラスパスの引数を指定します。次に、実行するgwt-codeserver.jarとCodeServerクラスに-jarと引数を指定し、次にCodeServerに引数を指定します。分解します。
5a)-cp「二重引用符で囲まれたクラスパスのコンマ区切りリスト」。ツール定義の移植性を高めるには、Eclipse「Varaibles」を使用してインストールに相対的なパスを計算します。特に、ワークスペースの相対パス(srcディレクトリなど)には「workspace_loc」を使用し、gwtSDKへのパスには「eclipse_home」を使用しました。 gwt-user.jarのようなもの(SDKをeclipseプラグインフォルダーにインストールしたため)。これが私のクラスパス部分です。
-cp "${eclipse_home}plugins\gwt-2.5.0.rc1\gwt-2.5.0.rc1\gwt-user.jar;${eclipse_home}plugins\gwt-2.5.0.rc1\gwt-2.5.0.rc1\gwt-dev.jar;${workspace_loc:\GWTFractionTest\war\WEB-INF\lib\gwtquery-1.1.0.jar};${eclipse_home}plugins\gwt-2.5.0.rc1\gwt-2.5.0.rc1\gwt-codeserver.jar"
5b)次は、java.exeが実行するクラスの名前です。これはCodeServerクラスです。
com.google.gwt.dev.codeserver.CodeServer
5c)次はCodeServerへの引数です。1つ目は、srcへの直接のパスです。私にとって、これはワークスペースの相対パスです。
-src "${workspace_loc:\GWTFractionTest\src}"
5d)最後に、モジュールパス(gwt.xmlファイルへのクラスパス)は私のものです。
com.conceptua.fractiontest.FractionTest
これが私の完全な引数リストです。
-cp "${eclipse_home}plugins\gwt-2.5.0.rc1\gwt-2.5.0.rc1\gwt-user.jar;${eclipse_home}plugins\gwt-2.5.0.rc1\gwt-2.5.0.rc1\gwt-dev.jar;${workspace_loc:\GWTFractionTest\war\WEB-INF\lib\gwtquery-1.1.0.jar};${eclipse_home}plugins\gwt-2.5.0.rc1\gwt-2.5.0.rc1\gwt-codeserver.jar" com.google.gwt.dev.codeserver.CodeServer -src "${workspace_loc:\GWTFractionTest\src}" com.conceptua.fractiontest.FractionTest
6)[実行]ボタンを選択して、CodeServerを実行します。これをコンソールで実行すると、
workDir: C:\Users\Ezward\AppData\Local\Temp\gwt-codeserver-6942784883227417581.tmp
binding: user.agent=safari
binding: compiler.useSourceMaps=true
binding: locale=en
Compiling module com.conceptua.fractiontest.FractionTest
Validating units:
Ignored 72 units with compilation errors in first pass.
Compile with -strict or with -logLevel set to TRACE or DEBUG to see all errors.
Computing all possible rebind results for 'com.google.gwt.useragent.client.UserAgentAsserter'
Rebinding com.google.gwt.useragent.client.UserAgentAsserter
Checking rule <generate-with class='com.google.gwt.editor.rebind.SimpleBeanEditorDriverGenerator'/>
[WARN] Detected warnings related to 'com.google.gwt.editor.client.SimpleBeanEditorDriver'. Are validation-api-<version>.jar and validation-api-<version>-sources.jar on the classpath?
Specify -logLevel DEBUG to see all errors.
[WARN] Unknown type 'com.google.gwt.editor.client.SimpleBeanEditorDriver' specified in deferred binding rule
Compiling 1 permutation
Compiling permutation 0...
Source Maps Enabled
Compile of permutations succeeded
Linking into C:\Users\Ezward\AppData\Local\Temp\gwt-codeserver-6942784883227417581.tmp\com.conceptua.fractiontest.FractionTest\compile-1\war\fractiontest; Writing extras to C:\Users\Ezward\AppData\Local\Temp\gwt-codeserver-6942784883227417581.tmp\com.conceptua.fractiontest.FractionTest\compile-1\extras\fractiontest
Link succeeded
Compilation succeeded -- 58.257s
Compile completed in 60831 ms
2012-07-01 12:37:03.184::INFO: Logging to STDERR via org.mortbay.log.StdErrLog
2012-07-01 12:37:03.185::INFO: jetty-6.1.x
The code server is ready.
Next, visit: http://localhxst:9876/
2012-07-01 12:37:03.274::INFO: Started SelectChannelConnector@127.0.0.1:9876
最初の「コンパイルエラーのある72ユニット」が表示される理由はわかりませんが、サーバーのコンパイルと実行は引き続き正常に行われているようです。
7)この時点で、指定されたCodeServerURLをChromeに入力する必要があります。CodeServerが実行中であることを示すページが表示され、ブックマークレットをブックマークツールバーにドラッグできます。
GWT Code Server
Drag these two bookmarklets to your browser's bookmark bar:
Dev Mode On Dev Mode Off
Visit a web page that uses one of these modules:
fractiontest
Click "Dev Mode On" to start development mode.
8)次のステップは、htmlファイルにアクセスして実行することです。どうやら別のウェブサーバーでサービスを提供する必要があります。私はまだその部分に取り組んでいます。
エド