blob: b64be9db3b09cdb2afd7255d2dbfd533f8c843f5 [file] [log] [blame]
//
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
// regarding copyright ownership. The ASF licenses this file
// to you under the Apache License, Version 2.0 (the
// "License"); you may not use this file except in compliance
// with the License. You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing,
// software distributed under the License is distributed on an
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
// KIND, either express or implied. See the License for the
// specific language governing permissions and limitations
// under the License.
//
= モバイル埋込みアプリケーションの作成、デバッグおよびプロファイリング
:jbake-type: tutorial
:jbake-tags: tutorials
:jbake-status: published
:icons: font
:syntax: true
:source-highlighter: pygments
:toc: left
:toc-title:
:description: モバイル埋込みアプリケーションの作成、デバッグおよびプロファイリング - Apache NetBeans
:keywords: Apache NetBeans, Tutorials, モバイル埋込みアプリケーションの作成、デバッグおよびプロファイリング
Sungmoon ChoAlyona Stashkova
モバイル埋込みアプリケーションは、産業用計測デバイス、自動販売機、セキュリティ・システム、モデム、家庭用電子機器、同様に表示が単純であるか表示がなく、ネットワーク接続が限定されているデバイスなどの、小型埋込みデバイスで使用されています。この例では、link:http://jcp.org/en/jsr/detail?id=228[+JSR 228+]、Information Module Profile-Next Generation API (IMP-NG)のサポートを含むOracle Java Micro Edition Embeddedプラットフォームを使用してNetBeans IDEで新しいJava ME埋込みプロジェクトを開発する方法を示します。Oracle Java ME EmbeddedのNetBeansサポートを使用して独自のIMletをデバッグおよびプロファイリングする方法も説明します。
image::images/netbeans-stamp-80-74-73.png[title="このページの内容は、NetBeans IDE 7.3以降に適用されます"]
*このチュートリアルを完了するには、次のソフトウェアとリソースが必要です。*
|===
|ソフトウェアまたはリソース |必須バージョン
|link:https://netbeans.org/downloads/index.html[+NetBeans IDEとJava ME+] |バージョン7.3またはそれ以降
|link:http://www.oracle.com/technetwork/java/javase/downloads/index.html[+Java Development Kit+] (JDK) |バージョン6、7または8
|link:http://www.oracle.com/technetwork/java/javame/javamobile/download/sdk/index.html[+Java ME SDK+] |バージョン3.2またはそれ以降
|===
*重要:* このチュートリアルは、Win32互換プラットフォームでのみ稼働します。
== Oracle Java ME Embeddedのインストール
NetBeans IDEWindowsプラットフォーム用のOracle Java ME Embeddedソフトウェアとともに設定するには、次の操作を行う必要があります。
* Oracle Java ME SDKのインストール
* NetBeans IDEでのJava ME機能のアクティブ化
* NetBeans IDEへのOracle Java ME Embeddedプラットフォームのインストール
*Oracle Java ME SDKをインストールする手順:*
1. link:http://www.oracle.com/technetwork/java/javame/javamobile/download/sdk/index.html[+Java ME SDKダウンロード+]・ページに移動します。
2. Accept License Agreement」オプションをクリックします。
3. Oracle Java ME SDKインストーラ・ファイル(oracle-jmesdk-3-4-rr-win32-bin.exeなど)をダウンロードし、コンピュータ上の任意の場所に保存します。
4. インストーラ・ファイルをダブルクリックしてインストーラを実行し、指示に従います。
インストールが完了すると、Java (TM) ME Platform SDK Device Managerアイコン(image::images/icon.png[])がWindowsシステム・トレイに表示されます。
*Java ME機能をアクティブにする手順:*
1. IDEのメイン・ツールバーから「ツール」→「プラグイン」を選択します。
2. 「プラグイン」ダイアログ・ボックスで、「インストール済み」タブをクリックし、使用可能な機能のリストで「Java ME」を選択します。
[.feature]
--
image::images/plugins-small.png[role="left", link="images/plugins.png"]
--
[start=3]
. 「アクティブ化」をクリックします。
[start=4]
. 「インストーラ」ダイアログ・ボックスの「ようこそ」パネルで「アクティブ化」をクリックします。
[.feature]
--
image::images/installer-small.png[role="left", link="images/installer.png"]
--
[start=5]
. アクティブ化が正常に完了したら、「終了」をクリックします。
[start=6]
. 「閉じる」をクリックして「プラグイン」ダイアログ・ボックスを閉じます。
*Oracle Java ME Embeddedプラットフォームをインストールする手順:*
1. 「ツール」→「Javaプラットフォーム」を選択します。
Javaプラットフォーム・マネージャ」ダイアログ・ボックスが表示されます。
[.feature]
--
image::images/jpmanager-small.png[role="left", link="images/jpmanager.png"]
--
[start=2]
. 「プラットフォームの追加」をクリックします。
[start=3]
. Javaプラットフォームの追加」ウィザードの「プラットフォーム・タイプを選択」で、「Java ME CLDCプラットフォーム・エミュレータ」を選択し、「次」をクリックします。
IDEに、「プラットフォームを検索するディレクトリを選択してください」ダイアログ・ボックスが表示されます。
[start=4]
. Java ME SDKプラットフォームをインストールしたディレクトリ( ``C:\Java_ME_Platform_SDK_3.2`` など)を選択し、「開く」をクリックします。
[start=5]
. Javaプラットフォームの追加」ウィザードの「プラットフォームのフォルダ」パネルで、前の手順で選択したプラットフォームが選択されていることを確認し、「次」をクリックします。
[start=6]
. IDEがプラットフォームを検出したらすぐに、「Javaプラットフォームの追加」ウィザードの「検出されたプラットフォーム」パネルで「終了」をクリックします。
[.feature]
--
image::images/jpdetected-small.png[role="left", link="images/jpdetected.png"]
--
これで、Oracle Java MEプラットフォームがNetbeans IDEに登録されます。
[.feature]
--
image::images/jpregistered-small.png[role="left", link="images/jpregistered.png"]
--
[start=7]
. Javaプラットフォーム・マネージャ」ダイアログ・ボックスで、「閉じる」をクリックします。
これで、NetBeans IDEがモバイル開発用に設定されます。
== 埋込みプロジェクトの作成
新規プロジェクトの作成は、NetBeans IDEでの新規Java ME Embeddedアプリケーションの開発の最初の手順です。
1. 「ファイル」>「新規プロジェクト」を選択します。
「新規プロジェクト」ダイアログ・ボックスが表示されます。
[start=2]
. Java ME」カテゴリと「埋込みアプリケーション」プロジェクトを選択します。「次」をクリックします。
[start=3]
. 新規埋込みアプリケーション・ウィザードの「名前と場所」パネルで、プロジェクト名として「 ``EmbeddedApp`` 」を指定します。
[.feature]
--
image::images/newappname-small.png[role="left", link="images/newappname.png"]
--
[start=4]
. 「デフォルト・パッケージとIMletクラスの作成」オプションは選択したままにし、「次」をクリックします。
[start=5]
. CLDC Oracle Java(TM) Platform Micro Edition SDKがエミュレータ・プラットフォームとして選択され、IMPNGPhone1がデバイスとして選択されていることを確認します。
[start=6]
. 「終了」をクリックします。
IMP-NGアプリケーションとIMLetが標準IDEプロジェクトに作成されます。
image::images/prjcreated.png[]
<<top,先頭>>
== アプリケーションの実行
アプリケーションが正しく稼働していることを確認するには、アプリケーション・ソース・コードを次のように修正します。
1. 「プロジェクト」ウィンドウで、「 ``IMlet.java`` 」ファイルをダブルクリックし、「編集」を選択します。
IDEによって、 ``IMlet.java`` ファイルがソース・エディタに開かれます。
[start=2]
. ソース・コードをスクロールし、 ``StartApp`` メソッドを探します。
[start=3]
. ``StartApp`` メソッドの本体に、次の太字の行を挿入します。
[source,java]
----
public void startApp() {
*System.out.println("Hello, world!");*
}
----
[start=4]
. IDEのメイン・メニューから「ファイル」→「保存」を選択して、編集内容を保存します。
これでアプリケーションが作成され、次の説明に従ってIDEでアプリケーションを実行できます。
1. ``EmbeddedApp`` 」プロジェクトを右クリックし、「消去してビルド」を選択します。
「出力」ウィンドウにBUILD SUCCESSFUL文が表示されます。
*注意:* 「出力」ウィンドウが表示されない場合は、IDEのメイン・メニューから「ウィンドウ」→「出力」→「出力」を選択します。
[start=2]
. IDEのメニュー・バーから、「実行」→「プロジェクトの実行」を選択します。
IMPNGPhone1エミュレータが起動し、実行されているEmbeddedAppアプリケーションが表示されます。
[.feature]
--
image::images/emulator-small.png[role="left", link="images/emulator.png"]
--
*注意:* Java ME Embeddedエミュレータの詳細は、link:http://docs.oracle.com/javame/config/cldc/rel/3.2/get-started-win/title.htm[+Oracle Java ME Embeddedスタート・ガイド for Windows 32プラットフォーム+]を参照してください。
「出力」ウィンドウに、プログラムからの出力として`Hello, world!`が表示されます。
[.feature]
--
image::images/output-small.png[role="left", link="images/output.png"]
--
[start=3]
. エミュレータで、「 ``Embedded App (running)`` 」を選択し、右側の「一時停止」をクリックします。
アプリケーションが一時停止します。
[start=4]
. 「再開」をクリックします。
アプリケーションの実行が再開します。
[start=5]
. アプリケーションを停止し、エミュレータを終了するには、「停止」をクリックし、エミュレータのメニューから「アプリケーション」→「終了」を選択します。
IDEで実行プロセスが終了します。
<<top,先頭>>
== アプリケーションのデバッグ
埋込みプロジェクトのデバッグは、一般的なJavaプロジェクトのデバッグと同様に実行します。
プロジェクトを右クリックし、「デバッグ」を選択してデバッグ・セッションを開始します。エミュレータが開き、プログラムの実行が任意の設定したブレークポイントで停止します。
<<top,先頭>>
== アプリケーションのプロファイリング
標準CPUまたはメモリー・プロファイリングなどの一般的なプロファイリング・タスクを使用して、信頼性のあるモバイル埋込みアプリケーションをビルドします。
アプリケーションをプロファイリングする前に、次のようにJava ME SDK Toolsプラグインをインストールする必要があります。
1. NetBeans IDEで、「ツール」→「プラグイン」を選択します。
2. プラグイン・マネージャで、「使用可能なプラグイン」タブを選択します。
3. 「使用可能なプラグイン」タブで、Java ME SDK Toolsプラグインを探し、選択してインストールします。
[.feature]
--
image::images/available-plugins-small.png[role="left", link="images/available-plugins.png"]
--
[start=4]
. 「インストール」をクリックします。
[start=5]
. 「インストーラ」ダイアログ・ボックスの「ようこそ」ページで「次」をクリックします。
[start=6]
. 「ライセンス契約」ページで、プラグインに関連するライセンス契約を読みます。ライセンス契約のすべての条件に同意する場合は、該当するオプションをクリックしてから「インストール」をクリックします。
[start=7]
. インストール・プロセスが完了したら、「今すぐIDEを再起動」オプションを選択したままにして「終了」をクリックします。
NetBeans IDEの再起動後に、IDEを使用したモバイル埋込みアプリケーションのプロファイリングを開始できます。
1. IDEの「プロジェクト」タブで、`EmbeddedApp`プロジェクト名を選択します。
2. メイン・メニューから「プロファイル」→「プロジェクトをプロファイル」を選択して、プロファイリング・セッションを開始します。
*注意:* プロジェクトが初めてプロファイリングされるときに、プロファイラの統合を求められます。
[.feature]
--
image::images/enable-small.png[role="left", link="images/enable.png"]
--
[start=3]
. (プロジェクトの初回プロファイリングに適用)「プロファイリングの有効化」ダイアログ・ボックスで、「はい」をクリックして統合を実行します。
[start=4]
. 「プロファイル」ダイアログ・ボックスで、CPUプロファイラを選択し、オプションでプロファイル・システム・クラスをチェックします。
[start=5]
. 「実行」をクリックします。
`EmbeddedApp`アプリケーションが実行されたエミュレータが開きます。
[start=6]
. アプリケーションと対話します。
[start=7]
. アプリケーションを終了するか、エミュレータを閉じます。
IDEにより、「`cpu:_time_`」ウィンドウにプロファイル・データが表示されます。
[.feature]
--
image::images/cpu-small.png[role="left", link="images/cpu.png"]
--
*注意:* 後で参照するためにエミュレーション・セッション中に収集されたデータを保存するには、次のいずれかを行います。
* 「エクスポート先」ボタン(image::images/export.png[])をクリックして、データを`nps`ファイルにエクスポートする
* 「現在のビューを画像に保存」ボタン(image::images/image.png[])をクリックして、スナップショットを`png`ファイルに保存する
link:/about/contact_form.html?to=6&subject=Creating,%20Debugging,%20and%20Profiling%20an%20Embedded%20Application[+このチュートリアルに関するご意見をお寄せください+]
<<top,先頭>>
== 関連項目
* link:imp-ng-screencast.html[+デモ: NetBeans IDEでのIMP-NGプロファイルのサポート+]
* link:http://www.oracle.com/technetwork/java/javame/javamobile/training/jmesdk/index.html[+Javaモバイル - 学習の開始+]
* link:http://www.oracle.com/technetwork/java/embedded/resources/me-embeddocs/index.html[+Oracle Java ME Embeddedクライアント・ドキュメント+]
* link:https://blogs.oracle.com/javamesdk/[+Java ME SDK Teamブログ+]
* _NetBeans IDEによるアプリケーションの開発_link:http://www.oracle.com/pls/topic/lookup?ctx=nb8000&id=NBDAG1552[+Java MEアプリケーションの開発+]
<<top,先頭>>