| // |
| // 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. |
| // |
| |
| = 创建、调试 Mobile 嵌入式应用程序并进行性能分析 |
| :jbake-type: tutorial |
| :jbake-tags: tutorials |
| :jbake-status: published |
| :icons: font |
| :syntax: true |
| :source-highlighter: pygments |
| :toc: left |
| :toc-title: |
| :description: 创建、调试 Mobile 嵌入式应用程序并进行性能分析 - Apache NetBeans |
| :keywords: Apache NetBeans, Tutorials, 创建、调试 Mobile 嵌入式应用程序并进行性能分析 |
| |
| Sungmoon Cho、Alyona Stashkova |
| |
| Mobile 嵌入式应用程序应用于小型嵌入式设备,例如,工业测量设备、自动贩卖机、安全系统、调制解调器、家用电子设备,以及具有简易显示器(或没有显示器)和某种有限网络连接的类似设备。本示例演示如何使用 Oracle Java Micro Edition Embedded 平台在 NetBeans IDE 中开发新 Java ME 嵌入式项目,该平台包括对 link:http://jcp.org/en/jsr/detail?id=228[+JSR 228+] 信息模块配置文件 - 下一代 API (IMP-NG) 的支持。本示例还将介绍如何使用 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[+带有 Java ME 的 NetBeans IDE+] |版本 7.3 及更高版本 |
| |
| |link:http://www.oracle.com/technetwork/java/javase/downloads/index.html[+Java 开发工具包+] (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 |
| |
| 要在 Windows 平台上设置带有 Oracle Java ME Embedded 软件的 NetBeans IDE,您需要: |
| |
| * 安装 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 download+](Java ME SDK 下载)页。 |
| 2. 单击 "Accept License Agreement"(接受许可协议)选项。 |
| 3. 下载 Oracle Java ME SDK 安装文件(例如 oracle-jmesdk-3-4-rr-win32-bin.exe)并将其保存到计算机上的任意位置。 |
| 4. 双击此安装文件以运行安装程序,并按照说明操作。 |
| 安装完成后,Windows 系统托盘中会显示 "Java (TM) ME Platform SDK Device Manager"(Java (TM) ME Platform SDK 设备管理器)图标 (image:images/icon.png[])。 |
| |
| *激活 Java ME 功能:* |
| |
| 1. 从 IDE 主工具栏中选择 "Tools"(工具)> "Plugins"(插件)。 |
| 2. 在 "Plugins"(插件)对话框中,单击 "Installed"(已安装)标签,并在可用功能列表中选择 "Java ME"。 |
| |
| [.feature] |
| -- |
| |
| image::images/plugins-small.png[role="left", link="images/plugins.png"] |
| |
| -- |
| |
| |
| [start=3] |
| . 单击 "Activate"(激活)。 |
| |
| [start=4] |
| . 在 "Installer"(安装程序)对话框的 "Welcome"(欢迎使用)面板上,单击 "Activate"(激活)。 |
| |
| [.feature] |
| -- |
| |
| image::images/installer-small.png[role="left", link="images/installer.png"] |
| |
| -- |
| |
| |
| [start=5] |
| . 在成功完成激活过程后,单击 "Finish"(完成)。 |
| |
| [start=6] |
| . 单击 "Close"(关闭)以关闭 "Plugins"(插件)对话框。 |
| |
| *安装 Oracle Java ME Embedded 平台:* |
| |
| 1. 选择 "Tools"(工具)> "Java Platforms"(Java 平台)。 |
| 此时将显示 "Java Platform Manager"(Java 平台管理器)对话框。 |
| |
| [.feature] |
| -- |
| |
| image::images/jpmanager-small.png[role="left", link="images/jpmanager.png"] |
| |
| -- |
| |
| |
| [start=2] |
| . 单击 "Add Platform"(添加平台)。 |
| |
| [start=3] |
| . 在 "Add Java Platform"(添加 Java 平台)向导的 "Select Platform Type"(选择平台类型)中,选择 "Java ME CLDC Platform Emulator"(Java ME CLDC 平台仿真器)并单击 "Next"(下一步)。 |
| IDE 随即会显示 "Choose directory to search for platforms"(选择要在其中搜索平台的目录)对话框。 |
| |
| [start=4] |
| . 选择要在其中安装 Java ME SDK 平台的目录(例如, ``C:\Java_ME_Platform_SDK_3.2`` ),然后单击 "Open"(打开)。 |
| |
| [start=5] |
| . 在 "Add Java Platform"(添加 Java 平台)向导的 "Platform Folders"(平台文件夹)面板中,确保选择上一步骤中的所选平台,然后单击 "Next"(下一步)。 |
| |
| [start=6] |
| . 在 IDE 检测到平台之后,请立即在 "Add Java Platform"(添加 Java 平台)向导的 "Detected Platforms"(已检测到平台)面板中单击 "Finish"(完成)。 |
| |
| [.feature] |
| -- |
| |
| image::images/jpdetected-small.png[role="left", link="images/jpdetected.png"] |
| |
| -- |
| |
| 现在将在 Netbeans IDE 中注册 Oracle Java ME 平台。 |
| |
| [.feature] |
| -- |
| |
| image::images/jpregistered-small.png[role="left", link="images/jpregistered.png"] |
| |
| -- |
| |
| |
| [start=7] |
| . 在 "Java Platform Manager"(Java 平台管理器)对话框中,单击 "Close"(关闭)。 |
| |
| 现在您已设置 NetBeans IDE,可以进行 Mobile 开发了。 |
| |
| |
| == 创建嵌入式项目 |
| |
| 创建新项目是使用 NetBeans IDE 开发新 Java ME Embedded 应用程序的首要步骤。 |
| |
| 1. 选择 "File"(文件)> "New Project"(新建项目)。 |
| 此时将显示 "New Project"(新建项目)对话框。 |
| |
| [start=2] |
| . 选择 "Java ME" 类别,然后选择 "Embedded Application"(嵌入式应用程序)项目。单击 "Next"(下一步)。 |
| |
| [start=3] |
| . 在 "New Embedded Application"(新建嵌入式应用程序)向导的 "Name and Location"(名称和位置)面板中,指定 ``EmbeddedApp`` 作为项目名称。 |
| |
| [.feature] |
| -- |
| |
| image::images/newappname-small.png[role="left", link="images/newappname.png"] |
| |
| -- |
| |
| |
| [start=4] |
| . 保持选中 "Create Default Package and IMlet Class"(创建默认包和 IMlet 类)选项,然后单击 "Next"(下一步)。 |
| |
| [start=5] |
| . 确保选择 "CLDC Oracle Java(TM) Platform Micro Edition SDK" 作为仿真器平台,并选择 "IMPNGPhone1" 作为设备。 |
| |
| [start=6] |
| . 单击 "Finish"(完成)。 |
| 此时将在标准 IDE 项目中创建一个具有 IMLet 的 IMP-NG 应用程序。 |
| |
| image::images/prjcreated.png[] |
| |
| <<top,返回页首>> |
| |
| |
| == 运行应用程序 |
| |
| 要验证应用程序是否正常运行,请修改应用程序源代码,如下所示: |
| |
| 1. 在 "Projects"(项目)窗口中,双击 ``IMlet.java`` 文件并选择 "Edit"(编辑)。 |
| IDE 随即会在源代码编辑器中打开 ``IMlet.java`` 文件。 |
| |
| [start=2] |
| . 滚动查看源代码并查找 ``StartApp`` 方法。 |
| |
| [start=3] |
| . 在 ``StartApp`` 方法的主体中插入以下用粗体显示的行: |
| |
| [source,java] |
| ---- |
| |
| public void startApp() { |
| *System.out.println("Hello, world!");* |
| } |
| ---- |
| |
| [start=4] |
| . 从 IDE 主菜单中选择 "File"(文件)> "Save"(保存)以保存所做的编辑。 |
| |
| 现在您已创建应用程序,您可以按照下述方法在 IDE 中运行该应用程序: |
| |
| 1. 右键单击 ``EmbeddedApp`` 项目节点,然后选择 "Clean and Build"(清理并构建)。 |
| "Output"(输出)窗口将显示 BUILD SUCCESSFUL 语句。 |
| |
| *注:*如果 "Output"(输出)窗口不可见,请从 IDE 主菜单中选择 "Window"(窗口)> "Output"(输出)> "Output"(输出)。 |
| |
| |
| [start=2] |
| . 从 IDE 菜单栏中,选择 "Run"(运行)> "Run Project"(运行项目)。 |
| IMPNGPhone1 仿真器随即启动并显示 EmbeddedApp 应用程序正在运行。 |
| |
| [.feature] |
| -- |
| |
| image::images/emulator-small.png[role="left", link="images/emulator.png"] |
| |
| -- |
| |
| *注:*《link:http://docs.oracle.com/javame/config/cldc/rel/3.2/get-started-win/title.htm[+面向 Windows 32 平台的 Oracle Java ME Embedded 入门指南+]》中提供了有关 Java ME Embedded Emulator 的详细信息。 |
| |
| 在 "Output"(输出)窗口中,您应当可以看到程序输出 `Hello, world!` |
| |
| [.feature] |
| -- |
| |
| image::images/output-small.png[role="left", link="images/output.png"] |
| |
| -- |
| |
| |
| [start=3] |
| . 在仿真器中,选择 ``Embedded App (running)`` 并单击右侧的 "Suspend"(挂起)。 |
| 此时将暂停应用程序。 |
| |
| [start=4] |
| . 单击 "Resume"(恢复)。 |
| 此时将恢复运行应用程序。 |
| |
| [start=5] |
| . 要停止应用程序并关闭仿真器,请单击 "Stop"(停止)并从仿真器菜单中选择 "Application"(应用程序)> "Exit"(退出)。 |
| 此运行进程随即在 IDE 中终止。 |
| |
| <<top,返回页首>> |
| |
| |
| == 调试应用程序 |
| |
| 调试嵌入式项目与调试一般 Java 项目类似。 |
| |
| 右键单击相应项目,然后选择“调试”以启动调试会话。此时将打开仿真器,并且程序执行过程会在设置的任意断点处停止。 |
| |
| <<top,返回页首>> |
| |
| |
| == 对应用程序进行性能分析 |
| |
| 使用常见性能分析任务(例如,标准 CPU 或内存性能分析)构建可靠的 Mobile 嵌入式应用程序。 |
| |
| 在对应用程序进行性能分析之前,您需要按如下方式安装 Java ME SDK Tools 插件: |
| |
| 1. 在 NetBeans IDE 中,选择 "Tools"(工具)> "Plugins"(插件)。 |
| 2. 在插件管理器中,选择 "Available Plugins"(可用插件)标签。 |
| 3. 在 "Available Plugins"(可用插件)标签中,滚动查找 "Java ME SDK Tools" 插件,并选择该插件以便安装。 |
| |
| [.feature] |
| -- |
| |
| image::images/available-plugins-small.png[role="left", link="images/available-plugins.png"] |
| |
| -- |
| |
| |
| [start=4] |
| . 单击 "Install"(安装)。 |
| |
| [start=5] |
| . 在 "Installer"(安装程序)对话框的欢迎页,单击 "Next"(下一步)。 |
| |
| [start=6] |
| . 在 "License Agreement"(许可证协议)页上,阅读与该插件相关的许可证协议。如果您同意所有许可证协议条款,请单击适当的选项,然后单击 "Install"(安装)。 |
| |
| [start=7] |
| . 安装过程完成后,保持选中 "Restart IDE now"(立即重新启动 IDE)选项并单击 "Finish"(完成)。 |
| |
| 在重新启动 NetBeans IDE 之后,您即可开始使用 IDE 对您的 Mobile 嵌入式应用程序进行性能分析。 |
| |
| 1. 在 IDE 的 "Projects"(项目)标签中,选择 `EmbeddedApp` 项目名称。 |
| 2. 从主菜单中选择 "Profile"(分析)> "Profile Project"(分析项目)以便启动性能分析会话。 |
| |
| *注:*当首次对项目进行性能分析时,系统会提示您集成分析器。 |
| |
| [.feature] |
| -- |
| |
| image::images/enable-small.png[role="left", link="images/enable.png"] |
| |
| -- |
| |
| |
| [start=3] |
| . (适用于首次对项目进行性能分析)在 "Enable Profiling"(启用性能分析)对话框中,单击 "Yes"(是)执行集成。 |
| |
| [start=4] |
| . 在 "Profile"(分析)对话框中,选择 "CPU Profiler"(CPU 分析器),并选择性地选中 "Profile System Classes"(分析系统类)。 |
| |
| [start=5] |
| . 单击 "Run"(运行)。 |
| 此时将打开仿真器,并显示正在运行的 `EmbeddedApp` 应用程序。 |
| |
| [start=6] |
| . 与应用程序交互。 |
| |
| [start=7] |
| . 退出应用程序或关闭仿真器。 |
| IDE 会在 `cpu:_时间_`窗口中显示分析数据。 |
| |
| [.feature] |
| -- |
| |
| image::images/cpu-small.png[role="left", link="images/cpu.png"] |
| |
| -- |
| |
| *注:*要保存在仿真会话中收集的数据以供将来参考,您可以执行以下任一操作: |
| |
| * 通过单击 "Export to"(导出至)按钮 (image:images/export.png[]) 将数据导出到 `nps` 文件 |
| * 通过单击 "Save Current View to Image"(将当前视图另存为图像)按钮 (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 Mobile - 开始学习+] |
| * 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 团队博客+] |
| * _使用 NetBeans IDE 开发应用程序_中的link:http://www.oracle.com/pls/topic/lookup?ctx=nb8000&id=NBDAG1552[+开发 Java ME 应用程序+] |
| |
| <<top,返回页首>> |
| |