インストールからHelloWorldまで【その3】
今回の作業の流れ
前回はSunのエミュレータで実行させるところまででしたが、今回はS!アプリ特有のライブラリ(MEXA)を使った開発ができるように、NetBeansからMEXAエミュレータを起動させるための設定を行います。
今回の作業の前提条件として、「J2ME TM Wireless Toolkit」と「S!アプリ開発ツール(MEXA SDK)」のインストールが済んでいる必要がありますので、「EclipseでS!アプリインストールからHelloWorldまで【その1】【その2】【その3】」を参考に準備を整えてから作業を始めてください。
2009.01.06追記
NetBeans6.5では(それ以前でも)JavaMEの中に「J2ME TM Wireless Toolkit」が含まれています。同梱のものを使う場合は適宜追記部分を参照してください。
※このページの画像では【2桁のバージョン番号】にすべて「12」が入ります。
設定が必要な項目は以下の3点です。
MEXAエミュレータの追加
「ツール>Javaプラットフォーム」の順に開く。
「参照」をクリックし、プラットフォームのホームに「J2ME TM Wireless Toolkit」のインストールフォルダを指定します。
「J2ME TM Wireless Toolkit」のインストールフォルダはデフォルトで「C:\WTK22」です。
2009.01.06追記分
NetBeans6.5に同梱されているものを使うならデフォルトで「C:\Program Files\NetBeans 6.5\mobility8\WTK2.5.2」です。
「プラットフォーム名」と「デバイス名」を下記の通りに変更します。
項目 | 入力値 | 備考 |
---|---|---|
プラットフォーム名 | MEXA | 任意の値 |
デバイス名 | sample | 「C:\SOFTBANK_MEXA_EMULATOR【2桁のバージョン番号】\projects」以下にある任意のプロジェクト名 |
「実行コマンド」と「デバッガコマンド」を下記の通りに変更します。
「S!アプリ開発ツール(MEXA SDK)」のインストールフォルダが「C:\Program Files\SOFTBANK_MEXA_EMULATOR【2桁のバージョン番号】\」、プロジェクトフォルダが「C:\SOFTBANK_MEXA_EMULATOR【2桁のバージョン番号】\projects\」になっている環境の場合です。
- 実行コマンド
"C:\Program Files\SOFTBANK_MEXA_EMULATOR【2桁のバージョン番号】\mexa_emulator.exe" {device|C:\SOFTBANK_MEXA_EMULATOR【2桁のバージョン番号】\projects\"{device}"\"{device}".vjp} {jadfile|-direct "{jadfile}"}
- デバッガコマンド
"C:\Program Files\SOFTBANK_MEXA_EMULATOR【2桁のバージョン番号】\mexa_emulator.exe" {device|C:\SOFTBANK_MEXA_EMULATOR【2桁のバージョン番号】\projects\"{device}"\"{device}".vjp} {jadfile|-direct "{jadfile}"} {debug|-debugger -suspend -port {debugtransport}}
「追加」をクリックし、MEXAライブラリのZIPファイルを指定します。
「C:\Program Files\SOFTBANK_MEXA_EMULATOR【2桁のバージョン番号】\lib\stubclasses.zip」
発生するエラー
発生条件はハッキリしませんが、同名のプロジェクトの作成・削除を繰り返していると以下のようなエラーが発生することがあります。
java.lang.ClassNotFoundException: hello/HelloMIDlet java.lang.ClassNotFoundException: hello/HelloMIDlet at javax.microedition.midlet.MIDlet.createMIDletInstance(+19) at javax.microedition.midlet.MIDlet.main(+105)
これはブートストラップクラスを指定せずにコンパイルした場合に発生するエラーと同種です。コマンド的には「javac -bootclasspath C:\Program Files\SOFTBANK_MEXA_EMULATOR【2桁のバージョン番号】\lib\stubclasses.zip …」の部分です。
今のところ回避方法が不明のため、わかり次第ブログを更新します。