« 最初のリッチクライアント(3) - デバッガで実行 | トップページ | ワークベンチ・ウィンドウの表示・消去時の処理 »

2004.07.03

最初のリッチクライアント(4) - 単独で実行

前回「デバッガで実行」で実行したリッチクライアント,一刻も早く単独で動かしたいところだろう。リッチクライアントはIDEの拡張機能ではなく,単独で動作するGUI付きのアプリケーションなので,最終的にはRun-time Workbenchで実行していても意味がない。今回は,作成したリッチクライアントをEclipse-IDEから切り離し,単独で動作させるための方法を紹介する。

プラグインの開発後,いろんな人に使ってもらうために,プラグインをエクスポートするだろう。リッチクライアントいえどプラグインに代わりはないので,まずは前回までに作成したyoichiro.rcp.smileプラグインをエクスポートする。Package Explorerビューのyoichiro.rcp.smileプロジェクトで右クリックを行い,表示されたコンテキストメニューの[Export...]を選択する。

表示されたExportダイアログでは,[Select an export destination]欄の中から[Deployable plug-ins and fragments]を選択し,[Next]ボタンを押下する。そして次のページでは,[Available Plug-ins and Fragments]欄で[yoichiro.rcp.smile]にチェックが入っていることを確認する。また,[Export Options]内の[Deploy as]は[a directory structure]を選択し,[Destination]の[Directory]に適当なディレクトリを入力する(例えば「C:\SmileApplication」)。

rcp-run1.gif

ウィザードの最後に[Finish]ボタンを押せば,指定したディレクトリにyoichiro.rcp.smileプラグインがエクスポートされる。指定したディレクトリに移動すると,pluginsディレクトリ内にyoichiro.rcp.smile_1.0.0プラグインディレクトリが存在し,その中にplugin.xml,smile.jarファイルが生成されているのが確認できる。

rcp-run2.gif

エクスポートは完了したが,それだけで動かせるほど世の中甘くない。いくつかファイルをEclipseからコピーする必要がある。

まずはEclipseをインストールしたディレクトリにあるstartup.jarを,先ほどエクスポートしたディレクトリにコピーする。次に,実行に必要な依存プラグインを,エクスポートしたディレクトリにあるpluginsディレクトリ内にコピーする。ここで「依存プラグインって,どれだよ!?」と思うのは当然。「プラグイン・マニフェストの作成」で記載した2つの依存プラグインだけであればそれらのみをコピーすればよいのだが,実は他にもいくつか必要なプラグインが存在する。

実行に必要なプラグインがどれなのかを調べるにはどうすればよいか,実はその答えは前回の「デバッガで実行」で既に示している。デバッガで実行する際に,Debugダイアログ内の[Plug-ins]タブにおいて,一旦全プラグインのチェックをはずし,再度依存しているプラグインのみにチェックを入れるための方法を示した。そこでチェックが自動的に入ったプラグインについて,startup.jarファイルと同様に,Eclipseをインストールしたディレクトリからコピーする。

しかし,上記の方法だけで発見した依存プラグインをコピーしただけでは,実行に失敗してしまう。Eclipseランタイムがプラグインを発見できないのが理由である。これを解決するためには,org.eclipse.update.configuratorプラグインもコピーする必要がある。

依存プラグインのコピー後,エクスポートしたディレクトリ内はこんな構造になっているはずである。

rcp-run3.gif

以上でファイルが揃ったので,実行できるようになる。コマンドプロンプトでエクスポートしたディレクトリに移動し,以下のコマンドを実行してほしい。

javaw.exe -cp startup.jar org.eclipse.core.launcher.Main -application yoichiro.rcp.smile.SmileApplication

前回と同じように空のウィンドウが表示されれば,単独実行は成功である。

もちろん,ユーザにコマンドプロンプトで起動させるわけにはいかないので,通常はバッチファイルやショートカットを作成しておくことが必要になるだろう。

|

« 最初のリッチクライアント(3) - デバッガで実行 | トップページ | ワークベンチ・ウィンドウの表示・消去時の処理 »

コメント

この記事へのコメントは終了しました。

トラックバック


この記事へのトラックバック一覧です: 最初のリッチクライアント(4) - 単独で実行:

« 最初のリッチクライアント(3) - デバッガで実行 | トップページ | ワークベンチ・ウィンドウの表示・消去時の処理 »