SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

japan.internet.com翻訳記事

JavaFX MobileでデバイスUI開発をもっと効率的に

JavaFX Mobile開発の基本

JavaFX用Eclipseプラグイン

 JavaFX用のEclipseプラグインは、Eclipse 3.4のIDEに対してJavaFXに必要なライブラリとパースペクティブを提供し、JavaFX SDKとの関連付けを行います。JavaFX用Eclipseプラグインをインストールするには、プラグインの.zipファイルをダウンロードし、Eclipseディレクトリ内にこのファイルを展開します。また、JAVAFX_HOME変数の値をJavaFX SDKの場所に設定します。この設定を確認するには、Eclipseメニューバーの[Windows]→[Preferences]を選択します。この操作によって開く[Preferences]ウィンドウで、[Java]→[Build Path]→[Classpath Variables]を選択し、JavaFX_HOME変数が存在することと、その値がJavaFX SDKがインストールされているフォルダに設定されていることを確認します(図19を参照)。この変数が存在しないか正しく設定されていない場合は、インターフェースの[New...]ボタンまたは[Edit...]ボタンを使って、変数を適切に設定します。

図19 EclipseによるJavaFXコードのコンパイルと実行
図19 EclipseによるJavaFXコードのコンパイルと実行

 EclipseでJavaFXアプリケーションを作成するには、標準のJavaプロジェクトを作成するだけで済みます。プロジェクト作成時には、Eclipseの[Package Explorer]ビューでプロジェクトを右クリックし、メニューから[JavaFX]を選択して、[Add JavaFX Nature]オプションを選択します(図20を参照)。この操作により、JavaFXライブラリがプロジェクトに追加され、プラグインに用意されたJavaFXパースペクティブでプロジェクトが開きます。

図20 プロジェクトへのJavaFXライブラリの追加
図20 プロジェクトへのJavaFXライブラリの追加

 また、JavaFXプラグインは、新しいJavaFXスクリプトファイルまたは基本ステージを作成するオプションを提供することで、[New]ダイアログウィンドウを更新します(図21を参照)。Eclipseで[New]ダイアログウィンドウを開くには、メニューバーにあるEclipseの[File]メニューオプションから[New]→[Other...]を選択するか、Package Explorer内のJavaFXプロジェクトを右クリックして[New]を選択します。

図21 JavaFXスクリプトファイルの新規作成。Eclipse JavaFXプラグインにより、デフォルトのシーンを持つ基本ステージと新たなJavaFXスクリプトファイルを作成する機能が追加される
図21 JavaFXスクリプトファイルの新規作成。Eclipse JavaFXプラグインにより、デフォルトのシーンを持つ基本ステージと新たなJavaFXスクリプトファイルを作成する機能が追加される

 Eclipse JavaFXプラグインには、NetBeansのJavaFX Paletteのように、JavaFXのコードスニペットをJavaFXコードエディタにドラッグ&ドロップできる[Snippets]ツールバーがあります。(図22を参照)。

図22 JavaFXパースペクティブを含む[Snippets]ビュー。[Snippets]ビューにより、開発者はよく使われるJavaFXコードのコンポーネントやスニペットを編集中のJavaFXスクリプトにドラッグ&ドロップできる
図22 JavaFXパースペクティブを含む[Snippets]ビュー。[Snippets]ビューにより、開発者はよく使われるJavaFXコードのコンポーネントやスニペットを編集中のJavaFXスクリプトにドラッグ&ドロップできる

 しかし、NetBeansとは異なり、色分け表示の機能は貧弱で、コードの補完および折り畳みの機能やドキュメントのサポートはありません。しかも、現状のEclipse JavaFXプラグインにはいくつかのバグがあるようです。図23に示すように、エディタでは整数に対して型の互換性がないというエラーが誤って検出されています。幸い、この誤ったエラー検出によってアプリケーションのテストができなくなることはありません。なお、このバグは、JavaFXプラグインの課題リストにきちんと挙がっています。

図23 Eclipseによるエラーの誤検出。Eclipse JavaFXプラグインではInteger型が正しく理解されていないように見える
図23 Eclipseによるエラーの誤検出。Eclipse JavaFXプラグインではInteger型が正しく理解されていないように見える

 NetBeansの場合と同じように、このEclipseプラグインでも次の4つの方法でアプリケーションを実行できます。

  • アプリケーションとして(デスクトップで)実行
  • アプレットとして(ブラウザで)実行
  • Web Startで実行
  • エミュレータで実行

 JavaFX Scriptを実行するには、[Package Explorer]ビューで対象のJavaFXスクリプトを右クリックし、[Run As]→[JavaFX Application]を選択します(図24と図25を参照)。

図24 JavaFX Scriptの実行時のプロファイルとターゲットを選択
図24 JavaFX Scriptの実行時のプロファイルとターゲットを選択
図25 ファイルを右クリックしてJavaFX Scriptを実行
図25 ファイルを右クリックしてJavaFX Scriptを実行

 こうして開く[Edit Configuration]ウィンドウで、使用するランタイム環境にふさわしいプロファイルとターゲット([Profile - Target])を選択できます。その後のアプリケーションの実行でも同じ設定、すなわち同じプラットフォームが使用されます。別のモードで実行するには、Package Explorerビューで対象のJavaFXスクリプトを右クリックし、[Run As]→[Run Configurations...]を選択します(図26を参照)。[Run Configurations]ウィンドウが開くので、そこで別のプロファイルとターゲットを選択できます。

図26 ランタイム環境の変更。[Run Configurations...]を選択して[Profile - Target]を変更することでランタイム環境を変更する
図26 ランタイム環境の変更。[Run Configurations...]を選択して[Profile - Target]を変更することでランタイム環境を変更する

 Eclipseの設定により、アプリケーションのコンパイルと実行に使用するプロファイルを表示させることも可能です。JavaFXプロジェクトを右クリックし、表示されるメニューから[Properties]オプションを選択します。[Properties]ウィンドウで、[Java Build Path]を選択してから[Libraries]タブを選択します。このタブでJavaFXシステムライブラリのプロパティを編集するには、該当するライブラリをリストから選択して[Edit]ボタンを押します(図27と図28を参照)。[Edit Library]ウィンドウが開くので、そこで[Desktop]プロファイルと[Mobile]プロファイルの切り替えができます。[Mobile]プロファイルを選択すると、[Desktop]プロファイルの要素を伴うJavaFXアプリケーションはコンパイル(および実行)ができなくなります。これもやはり、JavaFXアプリケーションの移植性を確かなものにするための優れた安全策と言えます。

図27 JavaFXシステムライブラリのプロパティ編集。JavaFXシステムライブラリをリストから選択して[Edit]ボタンを押すとそのライブラリのプロパティを編集できる
図27 JavaFXシステムライブラリのプロパティ編集。JavaFXシステムライブラリをリストから選択して[Edit]ボタンを押すとそのライブラリのプロパティを編集できる
図28 JavaFXスクリプトのコンパイル(および実行)に使用するプロファイルの変更。JavaFXシステムライブラリを探すためのJavaビルドパスを[Properties]ウィンドウで選択する
図28 JavaFXスクリプトのコンパイル(および実行)に使用するプロファイルの変更。JavaFXシステムライブラリを探すためのJavaビルドパスを[Properties]ウィンドウで選択する

 どちらのIDEも、WYSIWYGによるドラッグ&ドロップ形式のビジュアル開発はサポートしていません。JavaFXツールに関する多くのブログ、フォーラム、コメントによれば、この機能は今後のJavaFXツールのリリースで追加されるそうです。

 興味深いことに、Eclipse JavaFXプラグインは、Project Kenaiから入手できます。Kenaiには、Eclipseプラグイン以外にも、いくつかのゲームやツール、さらにはJavaFXによるTwitterクライアントまで用意されています。Sunは、多数のデモアプリケーションをjavafx.comというWebサイトで公開しています。JavaFXでどんなことができるかを示す他のサンプルについては、KenaiのWebサイトを参照してください。

まとめ

 ほんの少しJavaFXに触れただけで、さまざまなプラットフォームやUI画面で動作するアプリケーションの開発、テスト、導入がすべて同じソースコードを使って行えることが分かるでしょう。現状で必要十分な機能が揃ったJavaFXツールですが、ゆくゆくはJavaFX UIの開発ブームの火付け役となるのでしょうか。デバイスベンダは本当にJavaFXプラットフォームをサポートするのでしょうか。さまざまなプラットフォームへのアプリケーションの導入はもっと簡単になるのでしょうか。今のところは誰もこうした疑問に答えられませんが、JavaFXとJavaFX Mobile は間違いなく今後に期待が持てる有望株といえそうです。

関連情報

この記事は参考になりましたか?

連載通知を行うには会員登録(無料)が必要です。
既に会員の方はを行ってください。
japan.internet.com翻訳記事連載記事一覧

もっと読む

この記事の著者

japan.internet.com(ジャパンインターネットコム)

japan.internet.com は、1999年9月にオープンした、日本初のネットビジネス専門ニュースサイト。月間2億以上のページビューを誇る米国 Jupitermedia Corporation (Nasdaq: JUPM) のニュースサイト internet.comEarthWeb.com からの最新記事を日本語に翻訳して掲載するとともに、日本独自のネットビジネス関連記事やレポートを配信。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

Jim White(Jim White)

Intertech Trainingのインストラクタ。『Java 2 Micro Edition』(Manning刊)の共著者でもある。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/3921 2009/06/05 14:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー