65.9K
CodeProject 正在变化。 阅读更多。
Home

Intel® System Studio 2018 Beta 用户指南,面向物联网 (IoT) Java 开发

emptyStarIconemptyStarIconemptyStarIconemptyStarIconemptyStarIcon

0/5 (0投票)

2017年10月24日

CPOL

59分钟阅读

viewsIcon

18526

本指南包含使用 Intel® System Studio 以 Java 开发物联网 (IoT) 项目的步骤。

本指南包含使用 Intel® System Studio 以 Java* 开发物联网 (IoT) 项目的步骤。Intel System Studio 包含适用于 Eclipse* 的插件,可让您连接到兼容板卡、更新和编程 IoT 项目。您可以利用示例项目和代码片段、管理与多个 IoT 板卡的连接、更新板卡上的中间件库等等。

本指南介绍的 Intel System Studio 版本支持以下板卡的 Java 开发:

  • Intel® IoT Gateway
  • MinnowBoard MAX*

有关创建和使用 C/C++ 项目的步骤,请参阅 Intel® System Studio C/C++ 开发用户指南

有关 Java 对 IoT 支持的更多信息,包括兼容性信息、构建和运行 Java IoT 应用程序以及已知限制,请查看 Java* for IoT 参考指南

要求

  • 您已设置好 IoT 板卡并将其连接到主机计算机。有关步骤,请参阅以下内容:
  • 如果您有 Windows 主机系统,则必须安装 Windows* 8 或更高版本。
  • 如果您有 Linux 主机系统,则支持 Ubuntu* 16.04。
  • 运行 Intel® System Studio 和创建项目时,必须具备互联网连接。

下表总结了 Intel® System Studio 支持的 IoT 平台、目标操作系统和编程语言。

平台 目标操作系统 编程语言
Intel® IoT Gateway (64 位) Ubuntu C/C++
  Intel® IoT Gateway Software Suite (Wind River* Linux* 64 位) C/C++, Java
Intel® IoT Gateway (32 位) Intel® IoT Gateway Software Suite (Wind River Pulsar Linux 32 位) C/C++, Java
Minnowboard MAX Wind River Pulsar* Linux* 7 C/C++
  Yocto-Project 构建的 Linux C/C++, Java

设置 Intel® System Studio

本指南将介绍如何在 Windows*、Mac* 或 Linux* 主机系统上设置 Intel® System Studio。本指南假设您已安装该应用程序。有关安装 Intel System Studio 的步骤,请参阅 Intel® System Studio 2018 Beta 版安装指南

请参阅下面的相应链接

在 Windows* 上设置 Intel® System Studio

本指南包含设置系统以使用 Intel® System Studio 的步骤。这些步骤适用于 Windows* 主机计算机;如果您的主机操作系统不同,请参阅 Mac*Linux* 的步骤。

这些步骤假定您已安装该应用程序。有关安装 Intel System Studio 的步骤,请参阅 Intel® System Studio 2018 Beta 版安装指南

您将执行以下高级步骤

有关创建和使用 C/C++ 项目的步骤,请参阅 Intel® System Studio C/C++ 开发用户指南

要求

  • 您的主机系统必须安装 Windows 8 或更高版本。您的 Windows 主机计算机上应有约 5GB 的可用空间,以及以下要求:
    • 您应该拥有对主机计算机的管理员访问权限。
    • 应在主机计算机的 BIOS 中启用虚拟化。在 BIOS 中,该选项名称将列为 Enable Intel VT-x 或类似名称。进入系统 BIOS 的步骤以及您计算机上的选项名称可能因系统而异;请查看您主机计算机的文档以获取具体信息。
    • 最少 4 GB RAM
  • Java* SE Development Kit 8:为了支持 Java 项目,您应该安装 64 位版本的 Java SE Development Kit 8(也称为 JDK 版本 1.8)。Intel® System Studio 还支持 OpenJDK 1.8 及更高版本。

    您可以从 Oracle 下载 JDK,网址为 http://www.oracle.com/technetwork/java/javase/downloads/index.html。请安装64 位 JDK(在下载名称中以x64表示),而不是 32 位(x86)版本。

    如果未安装正确的 JDK,您可能会看到类似以下内容的警告消息:

    Example of an error message about installing the JDK

设置您的主机计算机(Windows*)

要设置您的主机计算机,您需要安装 Docker。选择以下选项来安装正确版本的 Docker:

  • 对于 Windows® 10 Pro、Enterprise 或 Education 版本:安装 Docker for Windows*。
  • 对于所有其他受支持的 Windows 版本:您无需自行安装 Docker。Intel® System Studio 附带一个 Qemu with Docker 解决方案,开箱即用。

    如果 Docker 未运行且未安装其他 Docker,Intel System Studio 将自动启动 Qemu with Docker 解决方案。

  • 首次启动时,设置 Docker 的过程将花费更长时间。右下角的进度条将指示状态。

对于 Windows® 10 Pro、Enterprise 或 Education 主机计算机

检查 Hyper-V 是否已启用

  1. 右键单击 Windows 按钮,然后选择“程序和功能”。
  2. 选择“打开或关闭 Windows 功能”。
  3. 向下滚动直到看到 Hyper-V 条目。如果选中,则表示 Hyper-V 已启用。如果列表中没有 Hyper-V 条目,则表示您的 Windows 系统不支持 Hyper-V。

如果 Hyper-V 未启用

您无需自行安装 Docker。Intel® System Studio 附带一个 Qemu with Docker 解决方案,开箱即用。

如果 Docker 未运行且未安装其他 Docker,Intel® System Studio 将自动启动 Qemu with Docker 解决方案。首次启动时,设置 Docker 的过程将花费更长时间。右下角的进度条将指示状态。

如果 Hyper-V 已启用

  1. 请遵循 https://docs.dockerd.com.cn/docker-for-windows/ 上的说明安装 Docker for Windows。务必注意步骤和要求,包括以下内容:
  • 您的主机计算机应已启用虚拟化
  • 确保 Hyper-V 包已启用。

安装 Docker 后,您将在系统托盘中看到欢迎消息和 Docker 鲸鱼图标。

对于具有代理设置的网络

  • 在系统托盘中,右键单击 Docker 图标,然后选择“设置”。

  • 在左侧列表中,选择“代理”。
  • 选中“使用代理服务器”复选框,然后在“Web 服务器 (HTTP)”和“安全 Web 服务器 (HTTPS)”字段中提供您的代理信息。
  • 单击“应用”以保存更改。

  • 同样在左侧列表中,选择“常规”,然后选择“公开守护进程在 tcp://:2375 上,无 TLS”。

    警告:为了使用基于 Docker 的工具链构建应用程序,必须在 Docker for Windows 中启用此选项。但是,启用此选项也有一些安全方面的注意事项,您应该了解。如果您在共享 Windows 主机(例如 Windows Server)上安装了 Intel System Studio,尽管您已指定了正常的访问权限,但同一台计算机上的其他用户仍可能访问您的项目文件。这仅适用于登录到同一台主机计算机的用户,而不适用于登录到您网络上其他主机的用户。

要测试 Docker 是否正常工作,请通过单击“开始”图标并输入 cmd 来打开主机上的命令行窗口。输入以下命令:

docker run hello-world

您应该会看到类似下图的输出。如果不是,请重新检查上述步骤,并参阅 FAQ 获取故障排除信息。

现在您已成功设置好主机计算机,请继续 安装和运行 Intel® System Studio

安装和运行 Intel® System Studio

运行 IDE

  1. 在您的 Intel® System Studio 安装文件夹中,查找 system_studio_2018 文件夹。您应该会找到一个名为 iss_ide_eclipse-launcher.bat 的文件。双击它以运行 Intel® System Studio。

    使用 iss_ide_eclipse-launcher 文件(而不是 Eclipse 可执行文件)将以所有必要的环境设置启动 Intel® System Studio。每次启动 Intel® System Studio 时,请使用 iss_ide_eclipse-launcher 文件。
  2. 等待最多几分钟,您的主机将导入适当的开发容器并启动 IDE。
  3. 首次运行 Intel® System Studio 时,您需要指定一个工作区文件夹来存储您的项目。在用户主目录中创建工作区,或确保该位置已与 Docker 共享。

  4. 单击“确定”以启动 Intel® System Studio。应用程序将打开。
  5. 根据您正在使用的 IoT 板卡类型,您可能需要在板卡上运行一些其他命令才能在 Intel® System Studio 中运行代码示例。有关详细信息,请参阅 启用代码示例

如果您不是第一次安装 Intel® System Studio

您可能需要更新 Intel® System Studio 用于构建项目的 Docker 映像。查看您之前的 Intel® System Studio 安装是否附带 **Platform Support Manager**。如果是,则在安装应用程序后,您需要更新 Docker 映像。如 管理已安装的开发平台 中所述,打开 Platform Manager。然后,卸载 Intel® System Studio 中先前启用的每个平台的支持。重新选择每个平台以更新该平台的 Docker 映像。

恭喜,您已成功安装该应用程序!

对于具有代理设置的网络

本节包含在 Intel® System Studio 中设置网络代理的步骤。如果您在开放网络上,请跳过这些步骤。

  1. 在 Intel® System Studio 中,选择“窗口”>“首选项”,然后搜索“Proxy”。在左侧的“常规”下,单击“网络连接”。将显示“网络连接”页面。
  2. 从“活动提供程序”下拉列表中,选择“手动”。
  3. 提供您网络的相应代理信息,如下图所示。单击“确定”以应用您的更改。

在 Mac* 上设置 Intel® System Studio

本指南包含设置 Intel® System Studio 的步骤。这些步骤适用于 OS® X 主机计算机;如果您的主机操作系统不同,请参阅 Windows*Linux* 的步骤。

这些步骤假定您已安装该应用程序。有关安装 Intel System Studio 的步骤,请参阅 Intel® System Studio 2018 Beta 版安装指南

您将执行以下高级步骤

有关创建和使用 C/C++ 项目的步骤,请参阅 Intel® System Studio C/C++ 开发用户指南

要求

  • 您的 OS X 主机计算机应有约 5GB 的可用空间。
  • Java* SE Development Kit 8:为了支持 Java 项目,您应该安装 64 位版本的 Java SE Development Kit 8(也称为 JDK 版本 1.8)。Intel® System Studio 还支持 OpenJDK 1.8 及更高版本。

    您可以从 Oracle 下载 JDK,网址为 http://www.oracle.com/technetwork/java/javase/downloads/index.html。请安装64 位 JDK(在下载名称中以x64表示),而不是 32 位(x86)版本。

    如果未安装正确的 JDK,您可能会看到类似以下内容的警告消息:

    Example of an error message about installing the JDK

设置您的主机计算机 (OS X)

对于使用 El Capitan 及更新版本的用户

  1. Docker for Mac 文档站点下载 Docker for Mac 安装程序。单击“Get Docker for Mac (stable)”按钮。
  2. 双击 Docker.dmg 打开安装程序,然后将 Docker 图标拖到“应用程序”文件夹。
  3. 出现提示时,使用您的系统密码授权 Docker.app。
  4. 双击 Docker.app 启动 Docker。顶部状态栏中的鲸鱼图像表示 Docker 正在运行,并且可以从终端访问。

对于具有代理设置的网络

本节包含对公司代理用户执行的步骤。如果您在开放网络上,请跳过这些步骤。

  1. 安装 Docker for Mac 后,您可以在工具栏中找到 Docker 图标。要设置代理,请单击此图标并从菜单中选择“首选项”。

  2. 在弹出的对话框中,单击“代理”图标,选择“手动代理配置”,然后输入您的代理设置。单击“应用并重启”以应用您的代理设置。如果 Intel System Studio IoT Edition 已经在运行,也请重启它。

对于早于 El Capitan 的 OS X 版本

  1. 从以下位置下载 Docker Toolbox 安装程序:https://www.docker.com/products/docker-toolbox
  2. 使用默认配置设置安装 Docker Toolbox。您可以直接单击“下一步”和“安装”,直到安装完成。

对于具有代理设置的网络

本节包含对公司代理用户执行的步骤。如果您在开放网络上,请跳过这些步骤。

  1. 启动 Spotlight,方法是按下 Cmd + Space。
  2. 输入 terminal
  3. 选择 Terminal 应用程序。
  4. 在 Terminal 窗口中,输入以下命令,并根据您的网络填写相应信息:
    docker-machine create -d virtualbox 
    --engine-env HTTP_PROXY=http://example.com:911 
    --engine-env HTTPS_PROXY=https://example.com:912 
    --engine-env NO_PROXY=example2.com default

    等待命令运行完成。如果被要求允许 VirtualBox Interface 对您的计算机进行更改,请选择“是”。您可能需要多次执行此操作。

  5. 接下来,运行一次 Docker Quickstart Terminal 以确保所有设置都正确。从您的桌面双击 Docker Quickstart Terminal 图标。如果被要求允许 VirtualBox Interface 对您的系统进行更改,请单击“是”。

    注意:如果您在桌面上看不到 Docker Quickstart Terminal 图标,请在命令行界面中输入以下命令来运行 Quickstart Terminal:

    /Applications/Docker/Docker\ Quickstart\ Terminal.app/Contents/MacOS/applet

启动 Intel® System Studio

运行 IDE

  1. 导航到 Intel® System Studio 安装目录并运行 iss_ide_eclipse-launcher 文件。
  2. 等待最多几分钟,您的主机将导入适当的开发容器并启动 IDE。如果被要求允许 VirtualBox Interface 对您的系统进行更改,请单击“是”。您可能被提示多次。
  3. 首次运行 Intel® System Studio 时,您需要指定一个工作区文件夹来存储您的项目。在用户主目录中创建工作区,或确保该位置已与 Docker Toolbox 共享。
  4. 单击“确定”以启动 Intel® System Studio。应用程序将打开。
  5. 根据您正在使用的 IoT 板卡类型,您可能需要在板卡上运行一些其他命令才能在 Intel® System Studio 中运行代码示例。有关步骤,请参阅 启用代码示例

恭喜,您已成功安装该应用程序!

对于具有代理设置的网络

本节包含在 Intel® System Studio 中设置网络代理的步骤。如果您在开放网络上,请跳过这些步骤。

  1. 在 Intel® System Studio 中,选择“窗口”>“首选项”,然后搜索“Proxy”。在左侧的“常规”下,单击“网络连接”。将显示“网络连接”页面。
  2. 从“活动提供程序”下拉列表中,选择“手动”。
  3. 提供您网络的相应代理信息,如下图所示。单击“确定”以应用您的更改。

在 Linux* 上设置 Intel® System Studio

本指南包含在 Linux* 主机计算机上设置 Intel® System Studio 的步骤。这些步骤适用于 Linux* 主机计算机;如果您的主机操作系统不同,请参阅 Windows*Mac* 的步骤。

这些步骤假定您已安装该应用程序。有关安装 Intel System Studio 的步骤,请参阅 Intel® System Studio 2018 Beta 版安装指南

您将执行以下高级步骤

  • 设置您的主机计算机:安装连接到您的板卡所需的依赖项并设置 Docker 访问权限。
  • 启动 Intel® System Studio:运行 IDE 并配置您的工作区。

有关创建和使用 C/C++ 项目的步骤,请参阅 Intel® System Studio Java* 开发用户指南

要求

  • 您的主机计算机必须安装 Ubuntu 16.04 或更高版本。您的 Linux 主机计算机上应有约 5GB 的可用空间。
  • Java* SE Development Kit 8:要开发基于 Java 的项目,您应该安装 64 位版本的 Java SE Development Kit 8(也称为 JDK 版本 1.8)。Intel® System Studio 还支持 OpenJDK 1.8 及更高版本。

    您可以从 Oracle 下载 JDK,网址为 http://www.oracle.com/technetwork/java/javase/downloads/index.html。请安装64 位 JDK(在下载名称中以x64表示),而不是 32 位(x86)版本。

    如果未安装正确的 JDK,您可能会看到类似以下内容的警告消息:

    Example of an error message about installing the JDK

设置主机计算机

如果您位于代理后面,请执行以下命令,并提供您自己的代理信息:

sudo apt-key adv --keyserver-options http-proxy=http://proxy-example.com:911/ --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
sudo shutdown -r now
sudo docker run hello-world

您应该会看到 Docker 发送的简短“Hello, World”消息。

  1. 以具有 sudoroot 权限的用户登录您的计算机。
  2. 打开终端窗口。
  3. 执行以下命令更新软件包信息,然后确保 APT 使用 https 方法,并已安装 CA 证书:
    sudo apt-get update
    sudo apt-get install apt-transport-https ca-certificates
  4. 添加新的 GPG 密钥(如果您不在代理后面)

    sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
  5. 用您喜欢的编辑器打开 /etc/apt/sources.list.d/docker.list 文件。如果文件不存在,请创建它。
  6. 删除 docker.list 文件中所有现有的条目。
  7. 在 docker.list 文件中,为您的 Ubuntu 操作系统添加条目——Ubuntu Xenial 16.04 (LTS)
    deb https://apt.dockerproject.org/repo ubuntu-xenial main
  8. 保存并关闭 docker.list 文件。
  9. 更新 APT 软件包索引
    sudo apt-get update
  10. 使用以下命令安装 docker-engine:
    sudo apt-get install docker-engine
  11. 验证 APT 是否从正确的存储库拉取
    apt-cache policy docker-engine

    从现在开始,当您运行 apt-get upgrade 时,APT 将从您之前指定的新的存储库中拉取。

    注意:有关在代理后面使用 Docker 的详细信息,请遵循 https://docs.dockerd.com.cn/engine/admin/systemd/#http-proxy 上的指南。

  12. 启动 docker 守护进程

    sudo systemctl enable docker
  13. 您需要提升的权限才能与 Docker 守护进程交互并使用 Docker。在 Ubuntu 上,通过执行以下命令创建具有所需权限的 `docker` 组,其中 username 是您的用户名:

    sudo usermod -aG docker username
  14. 重启您的计算机
  15. 验证 Docker 是否已正确安装
  16. 如果您计划在 Ubuntu* OS 上创建开发项目,请在没有 root 权限的情况下加载 Docker 映像:

    docker pull inteliotdevkit/intel-iot-ubuntu

    注意:您也可以在 Intel® System Studio 中下载 Ubuntu Docker 映像。选择 Intel® IoT > Manage installed development platforms... 并选择相应的选项进行操作。

  17. 如果您计划开发 Java 项目并且尚未安装 Oracle 的 JDK,请按以下方式安装 Open JDK 8:

    sudo apt-get install openjdk-8-jdk
  18. 如果未正确显示介绍页面,则需要安装 libwebkitgtk 库。这允许 Eclipse 渲染网页内容。
    sudo apt-get install libwebkitgtk-1.0.0

启动 Intel® System Studio

运行 IDE

  1. 在终端窗口中,导航到安装 Intel® System Studio 的文件夹(例如,/opt/intel/system_studio_2018)。此文件夹应包含 iss_ide_eclipse-launcher.sh 文件。要运行该应用程序,请执行以下命令:
    ./iss_ide_eclipse-launcher
  2. 首次运行 Intel® System Studio 时,您需要指定一个工作区文件夹来存储您的项目。请选择硬盘上的本地文件夹。要与 Docker 容器共享工作区,root 用户需要能够访问此文件夹。



     
  3. 单击“确定”以启动 Intel® System Studio。Intel® System Studio 将打开。


  4. 根据您正在使用的 IoT 板卡类型,您可能需要在板卡上运行一些其他命令才能在 Intel® System Studio 中运行代码示例。有关步骤,请参阅 启用代码示例

恭喜,您已成功安装该应用程序!

对于具有代理设置的网络

本节包含在 Intel® System Studio 中设置网络代理的步骤。如果您在开放网络上,请跳过这些步骤。

  1. 在 Intel® System Studio 中,选择“窗口”>“首选项”,然后搜索“Proxy”。在左侧的“常规”下,单击“网络连接”。将显示“网络连接”页面。
  2. 从“活动提供程序”下拉列表中,选择“手动”。
  3. 提供您网络的相应代理信息,如下图所示。单击“确定”以应用您的更改。

启用代码示例

为了使用 Intel® System Studio 附带的一些代码示例,您可能需要运行一些额外的命令。这些命令必须在您的板卡命令行上运行,通过串行通信会话或 SSH。有关访问板卡的步骤,请参考您的板卡文档。

有关您的 IoT 平台的任何所需命令,请参阅以下各节。

对于具有 Ubuntu* 16.04 LTS 的 64 位 Intel® IoT Gateway

虽然 Grove* Starter Kit Plus 和 Basic 示例可以直接运行,但您需要执行以下步骤才能使其他示例正常工作。如果您已经配置了 IoT 平台的 SSH,则可以跳过这些步骤,继续 创建和运行项目

  1. 在您的 IoT 平台命令行上,执行以下命令以安装 OpenSSH 服务器应用程序和其他依赖项:
    sudo apt-get install software-properties-common python-software-properties net-tools apt-utils ca-certificates curl gdbserver gcc g++ openssh-server
  2. 由于您将修改网关上的 /etc/ssh/sshd_config 文件,因此应备份原始文件,以防需要恢复。为此,请使用以下命令:
    sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.original
    sudo chmod a-w /etc/ssh/sshd_config.original
  3. 用以下内容替换 /etc/ssh/sshd_config 文件中的当前内容(您也可以使用 vi 编辑器,通过命令 sudo vi /etc/ssh/sshd_config 打开和编辑该文件):
    #   $OpenBSD: sshd_config,v 1.80 2008/07/02 02:24:18 djm Exp $
    # This is the sshd server system-wide configuration file.  See
    # sshd_config(5) for more information.
    # This sshd was compiled with PATH=/usr/bin:/bin:/usr/sbin:/sbin
    # The strategy used for options in the default sshd_config shipped with
    # OpenSSH is to specify options with their default value where
    # possible, but leave them commented.  Uncommented options change a
    # default value.
    #Port 22
    #AddressFamily any
    #ListenAddress 0.0.0.0
    #ListenAddress ::
    # The default requires explicit activation of protocol 1
    Protocol 2
    # HostKey for protocol version 1
    #HostKey /etc/ssh/ssh_host_key
    # HostKeys for protocol version 2
    #HostKey /etc/ssh/ssh_host_rsa_key
    #HostKey /etc/ssh/ssh_host_dsa_key
    #HostKey /etc/ssh/ssh_host_ecdsa_key
    #HostKey /etc/ssh/ssh_host_ed25519_key
    # Lifetime and size of ephemeral version 1 server key
    #KeyRegenerationInterval 1h
    #ServerKeyBits 1024
    # Ciphers and keying
    #RekeyLimit default none
    # Logging
    # obsoletes QuietMode and FascistLogging
    #SyslogFacility AUTH
    #LogLevel INFO
    # Authentication:
    #LoginGraceTime 2m
    PermitRootLogin yes
    StrictModes no
    #MaxAuthTries 6
    #MaxSessions 10
    RSAAuthentication yes
    PubkeyAuthentication yes
    # The default is to check both .ssh/authorized_keys and .ssh/authorized_keys2
    # but this is overridden so installations will only check .ssh/authorized_keys
    AuthorizedKeysFile .ssh/authorized_keys
    #AuthorizedPrincipalsFile none
    #AuthorizedKeysCommand none
    #AuthorizedKeysCommandUser nobody
    # For this to work you will also need host keys in /etc/ssh/ssh_known_hosts
    #RhostsRSAAuthentication no
    # similar for protocol version 2
    #HostbasedAuthentication no
    # Change to yes if you don't trust ~/.ssh/known_hosts for
    # RhostsRSAAuthentication and HostbasedAuthentication
    #IgnoreUserKnownHosts no
    # Don't read the user's ~/.rhosts and ~/.shosts files
    #IgnoreRhosts yes
    # To disable tunneled clear text passwords, change to no here!
    PasswordAuthentication yes
    PermitEmptyPasswords yes
    # Change to no to disable s/key passwords
    ChallengeResponseAuthentication no
    # Kerberos options
    #KerberosAuthentication no
    #KerberosOrLocalPasswd yes
    #KerberosTicketCleanup yes
    #KerberosGetAFSToken no
    # GSSAPI options
    #GSSAPIAuthentication no
    #GSSAPICleanupCredentials yes
    # Set this to 'yes' to enable PAM authentication, account processing,
    # and session processing. If this is enabled, PAM authentication will
    # be allowed through the ChallengeResponseAuthentication and
    # PasswordAuthentication.  Depending on your PAM configuration,
    # PAM authentication via ChallengeResponseAuthentication may bypass
    # the setting of "PermitRootLogin without-password".
    # If you just want the PAM account and session checks to run without
    # PAM authentication, then enable this but set PasswordAuthentication
    # and ChallengeResponseAuthentication to 'no'.
    UsePAM no
    #AllowAgentForwarding yes
    #AllowTcpForwarding yes
    #GatewayPorts no
    X11Forwarding yes
    #X11DisplayOffset 10
    #X11UseLocalhost yes
    PermitTTY yes
    #PrintMotd yes
    #PrintLastLog yes
    #TCPKeepAlive yes
    #UseLogin no
    UsePrivilegeSeparation sandbox # Default for new installations.
    #PermitUserEnvironment no
    Compression no
    ClientAliveInterval 15
    ClientAliveCountMax 4
    #UseDNS yes
    #PidFile /var/run/sshd.pid
    #MaxStartups 10:30:100
    #PermitTunnel no
    #ChrootDirectory none
    #VersionAddendum none
    # no default banner path
    #Banner none
    # override default of no subsystems
    Subsystem sftp /usr/lib/openssh/sftp-server
    # Example of overriding settings on a per-user basis
    #Match User anoncvs
    #   X11Forwarding no
    #   AllowTcpForwarding no
    #   PermitTTY no
    #   ForceCommand cvs server
    PermitRootLogin yes
    PasswordAuthentication yes
    PermitEmptyPasswords yes
  4. 保存并关闭文件。
  5. 重新启动 sshd 服务器应用程序以应用更改。
    sudo systemctl restart sshd.service

对于带有 Intel® IoT Gateway Software Suite 的 Intel® IoT Gateway

How-to 代码示例和 Cloud 示例需要手动安装多个软件包。在您的 IoT 平台命令行上,运行以下命令:

对于 64 位网关

smart channel -y --add  intel_repository name="Intel Repository" type=rpm-md baseurl="https://download.01.org/iotgateway/rcpl25/x86_64/"
smart update
smart install -y upm mraa azure-iot-sdk ibm-iotf-ebeddedc openssl-dev
git clone https://github.com/eclipse/paho.mqtt.c.git
cd paho.mqtt.c
export prefix=/usr; make install

对于 32 位网关

smart channel -y --add  intel_repository name="Intel Repository" type=rpm-md baseurl="https://download.01.org/iotgateway/rcpl25/i586/"
smart update
smart install -y upm mraa azure-iot-sdk ibm-iotf-ebeddedc openssl-dev
git clone https://github.com/eclipse/paho.mqtt.c.git
cd paho.mqtt.c
export prefix=/usr; make install

对于带有 Wind River Pulsar* Linux* 7 的 MinnowBoard MAX*

请确保您的板卡安装了最新的 64 位固件:https://firmware.intel.com/projects/minnowboard-max

示例需要手动安装多个软件包。在您的 IoT 平台命令行上,运行以下命令:

smart channel -y --add upm_mraa_channel type=rpm-md name="MRAA/UPM" baseurl=http://iotdk.intel.com/repos/pulsar/7/x64
smart update
smart install -y mraa upm openssl-dev

Cloud 示例需要手动安装多个软件包,如下所示:

smart channel -y --add cloud_channel type=rpm-md name="Cloud" baseurl=http://iotdk.intel.com/repos/iot-cloud/pulsar/7/
smart update
wget https://iotdk.intel.com/misc/iot_pub.key
rpm -import iot_pub.key
smart install -y packagegroup-cloud-azure packagegroup-cloud-ibm packagegroup-cloud-aws

创建和运行项目

本节包含创建和运行项目的步骤。

创建新的 C/C++ 项目

有关创建新的 C/C++ 项目的步骤,请参阅本节。

运行项目

有关连接到您的板卡并运行项目的步骤,请参阅本节。

此主题包含在 Intel® System Studio 中创建新 Java* 项目的步骤。

如果您的项目包含示例代码,并且您的板卡是 Intel® IoT Gateway,您可能需要修改示例代码中的引脚编号以适应您板卡的引脚编号。例如,当您为 Intel® IoT Gateway 编程并想访问 Arduino 101*(在美国以外地区品牌为 Genuino 101*)板卡上的引脚时,您必须为引脚编号添加 512 的偏移量。要初始化 Arduino 101 板卡上的引脚 13(板载 LED),您实际上需要初始化引脚 525。

要求

设置 Maven 代理

如果您的网络包含公司代理,则在创建新的 Java 项目之前,应设置 Maven 代理设置。步骤包含在 https://maven.apache.org/guides/mini/guide-proxies.html 中。下面包含一个示例 settings.xml 文件:

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                          https://maven.apache.org/xsd/settings-1.0.0.xsd">
  <proxies>
    <proxy>
      <id>central-http</id>
      <active>true</active>
      <protocol>http</protocol>
      <host>proxy.example.com</host>
      <port>911</port>
      <nonProxyHosts>127.0.0.1|localhost</nonProxyHosts>
    </proxy>
    <proxy>
      <id>central-https</id>
      <active>true</active>
      <protocol>https</protocol>
      <host>proxy.example.com</host>
      <port>912</port>
      <nonProxyHosts>127.0.0.1|localhost</nonProxyHosts>
    </proxy>
  </proxies>
  <localRepository/>
  <interactiveMode/>
  <usePluginRegistry/>
  <offline/>
  <pluginGroups/>
  <servers/>
  <mirrors/>
  <profiles/>
  <activeProfiles/>
</settings>

创建新项目

  1. 从菜单中选择“文件”>“新建”>“项目…”。“创建新项目”页面将显示。
  2. 展开“应用程序开发”并选择“用于在容器中构建并在 Linux 上运行的项目”。
  3. Intel® System Studio 支持为多个操作系统构建项目。您将可以选择从“选择目标 OS”下拉列表中选择一个 OS,如下图所示。

    您可以在下表中看到创建 Java 项目支持的 OS:

    平台 目标操作系统 编程语言
    Intel® IoT Gateway (64 位) Ubuntu C/C++
      Intel® IoT Gateway Software Suite (Wind River* Linux* 64 位) C/C++, Java
    Intel® IoT Gateway (32 位) Intel® IoT Gateway Software Suite (Wind River Pulsar Linux 32 位) C/C++, Java
    Minnowboard MAX Wind River Pulsar* Linux* 7 C/C++
      Yocto-Project 构建的 Linux C/C++, Java
  4. 选择支持 Java 的 OS 之一,然后单击“下一步”。

  5. 当提示选择项目类型时,选择 Intel® IoT Java Maven Project。单击“下一步”。

  6. 在“名称”字段中输入项目的名称。在“示例”列表中,浏览并选择要创建的项目类型。“所选项目类型”的简短描述将显示在“描述”区域中。单击“下一步”。
  7. 单击“完成”。

  8. 您的项目已创建并显示。如果被询问是否为所选板卡类型安装平台支持,请单击“是”继续。这可能需要几分钟时间。

通过导入 IoT 示例创建新项目

  1. 选择 Intel® IoT > **导入 IoT 示例**。“Intel® System Studio 示例”选项卡将打开,其中列出了按编程语言分组的项目示例。
  2. 在示例列表中,浏览并选择要使用的示例。

    所选示例的描述将显示在“**描述**”选项卡上。

  3. 单击“**导入示例**”。“基于示例创建新项目”对话框将打开。
  4. 为目标 OS 选择适当的选项,在“**名称**”字段中输入新项目的名称,然后单击“**完成**”。您的项目将在“项目资源管理器”面板中创建并显示。

运行项目

本节包含在 Intel® System Studio 中运行项目的步骤。请注意,创建项目时,您是为特定操作系统创建项目。如果您尝试在板卡上运行项目并遇到不兼容的错误消息,很可能是您尝试在错误的板卡类型上运行项目。有关将项目转换为不同(且兼容)目标 OS 的步骤,请参阅 更改项目的目标 OS

有关在 Eclipse* 中运行和调试程序的更多信息,请参阅 Eclipse 网站上的文档

运行 Java 项目

要求

按照“创建、查看和连接到您的板卡(使用 SSH/TCF 代理连接)”部分中的说明创建新连接:创建、查看和连接到您的板卡(使用 SSH/TCF 代理连接)

运行项目

  • 选择项目的目标连接

    您的项目在运行或调试项目时使用的连接称为目标连接。默认情况下,Intel® System Studio 中的所有项目都使用相同的目标连接。请按照以下步骤为选定项目设置目标连接。

  • 单击目标下拉列表旁边的箭头,然后选择您的连接。
  • 确保在下拉列表中选择了您的目标。
  • 在工具栏的“**运行**”下拉列表中,选择您的项目名称。

    Running a project
  • 您可能会被提示输入密码或 SSH 私钥。有关详细信息,请参阅 创建 SSH/TCF 代理连接
  • 如果出现关于主机真实性的警告消息,请单击“**是**”上传并运行您的项目。

    Example of the host authenticity warning
  • 如果您的目标板卡上的 MRAA 和 UPM 库版本不再受 Intel® System Studio 支持(如下图“目标版本”下所示),您将收到提示,要求您将库更新到最低支持版本。

    单击“在目标上更新库”以更新您板卡上的目标库。

     
  • 您已添加到项目中的任何其他依赖项(MRAA 和 UPM 除外)都会根据需要上传到您的板卡。您的项目将运行。完成后,单击“控制台”面板中的“**终止**”图标,以结束当前运行的进程并清除草图文件夹的内容。

    Click the Terminiate icon to end the currently running process

管理项目和连接

本节包含在 Intel System Studio 中管理项目的步骤。

更改项目的目标 OS

本节包含在 Intel® System Studio 中更改物联网 (IoT) 项目 OS 的步骤。创建新项目时,您是为特定操作系统创建项目(例如,为 Ubuntu* 创建项目)。因此,如果您尝试在板卡上运行项目并遇到不兼容的错误消息,很可能是您尝试在错误的操作系统类型上运行项目。您可以更改项目的目标 OS 以确保您的项目与您的板卡兼容。这允许 Intel® System Studio 为您的 IoT 设备切换到合适的工具链。

如何知道我的项目目标 OS 是什么?

在“项目资源管理器”中,单击项目名称以选中它。选中项目后,您还可以了解项目适用的 OS。例如,如果项目名称旁边显示 [Wind River Linux 64-Bit],则该项目适用于安装了 Wind River* Linux* 64-bit 的板卡。

更改项目的目标 OS

  1. 在“项目资源管理器”的项目列表中,右键单击项目名称。选择“属性”。将显示“属性”对话框。

  2. 从左侧选择“OS 管理”。
  3. 从 Docker 工具链列表中,选择一个目标 OS。
  4. 单击“确定”。项目现在支持指定的 OS。

在 Intel® System Studio 中处理多个项目

默认情况下,您的项目会列在“项目资源管理器”选项卡中。当您单击菜单栏中的“运行” 和“调试” 图标时,Intel® System Studio 会使用项目目标连接运行当前选定的项目。下面是选择选定项目和目标连接的步骤:

选择项目

您可以通过单击菜单栏中的“运行” 和“调试” 图标来确定默认运行或调试哪个项目。这称为选定项目。请注意,您从“IoT 传感器支持”选项卡中添加到项目的传感器和头文件仅添加到选定项目,而不添加到“项目资源管理器”选项卡中的所有项目。

以下是手动选择项目的步骤。如果您运行或调试项目(例如,通过“运行”下拉菜单),则项目会自动被选中。

  1. 在“项目资源管理器”选项卡上,找到您的项目名称。
  2. 单击项目名称以选中它。单词 [selected] 将显示在项目名称旁边,表示它已被选中。

选中项目后,您还可以了解该项目适用于哪个目标 OS。例如,如果项目名称旁边显示 [Ubuntu 16.04 64-Bit],如下图所示,则该项目适用于安装了 Ubuntu 16.04 64-Bit 的目标。

选择项目的目标连接

您的项目在运行或调试项目时使用的连接称为目标连接。默认情况下,Intel® System Studio 中的所有项目都使用相同的目标连接。请按照以下步骤为选定项目设置目标连接。

  1. 单击连接下拉列表旁边的箭头,然后选择您的连接。
  2. 确保在下拉列表中选择了您的目标。

在 Intel® System Studio 中使用传感器

您可以在 UPM 传感器库 中查看支持的传感器列表,访问每个传感器的相关文档,并快速将传感器添加到您选定的项目中。有关步骤,请参阅下面的相应部分:

查看支持的传感器

  1. 选择 Intel® IoT > **传感器支持视图**。“IoT 传感器支持”选项卡将显示。

    Example of the IoT Sensor Support tab

支持的传感器按类别显示,例如“模拟输入”或“显示器”。您可以展开一个类别以查看该类别中支持的传感器列表。您还可以在“**类型筛选器文本**”字段中输入搜索词以搜索特定传感器。有关每个传感器信息包括描述、制造商和连接类型,例如 I2C 或 SPI。

Searching for a sensor

  • 您可以查看传感器的 UPM 传感器库文档。为此,请单击“Doc”类别下传感器的图标。
  • 您可以查看传感器的相关 wiki 信息(如果可用)。为此,请单击“Wiki”类别下传感器的图标。

Example of viewing the information for a sensor

将传感器添加到源文件

您可以将传感器添加到您的项目中。请注意,传感器仅添加到 选定的项目,而不是添加到“项目资源管理器”选项卡中的所有项目。

  1. 在“项目资源管理器”选项卡中,单击项目名称以选中它。单词 [selected] 将显示在项目名称旁边。
  2. 在“IoT 传感器支持”选项卡上,导航到传感器并选中其名称旁边的复选框。这将设置您在项目中使用传感器所需的所有选项,例如链接器标志。

    Select the check box next to the sensor name.
  3. 如果显示一条消息询问您是否要将传感器库的头文件添加到项目源文件,请单击“**是**”。

    Click Yes to add the header to the source file.

    头文件将作为 include 语句添加到主项目文件中。头文件被添加到选定的项目中。
    Example of the include statement for a sensor

向项目中添加传感器头文件

如果您已将传感器添加到项目中但尚未将其头文件添加到当前 选定的项目,您可以快速完成此操作,如下所示:

  1. 右键单击主项目文件,然后指向“**添加传感器头文件**”。
  2. 选择要添加的头文件。

Example of the sensor context menu

创建、查看和连接到您的板卡(使用 SSH/TCF 代理连接)

您可以创建新的连接到您的 IoT 板卡,使用现有连接连接到您的板卡,等等。有关步骤,请参阅下面的相应链接。

重要提示:请阅读!

Intel® System Studio 使用 Eclipse TCF 框架和 TCF Agent 连接到目标。首次连接时,TCF Agent 会被复制到目标。此代理允许在没有凭据的情况下进行连接。请确保您的目标位于单独的网络上,然后再进行连接。每次重启后,都需要再次复制代理。

警告:以这种方式连接到目标系统时,Intel System Studio 会将 TCF 代理复制到您的目标,该代理会监听来自您本地网络上任何计算机的连接。即使 IDE 请求身份验证凭据,该代理也没有任何身份验证。因此,任何用户都可以连接到它,并可以使用该代理在您的目标设备上运行任意代码。

TCF Agent 的复制过程是通过 SSH 连接完成的。此连接可以使用用户名和密码或公钥身份验证建立。请参阅下面的步骤,了解如何创建连接以及如何连接。

创建到板卡的连接

  1. 单击连接下拉列表旁边的箭头,然后选择“新建连接”。

  2. 如果您安装了完整的 Intel® System Studio,则会打开连接向导。请选择 Intel® System Studio IoT,然后单击“下一步”。如果您安装的是仅包含 Intel® System Studio IoT 组件的自定义版本,则此窗口不会弹出,您可以直接继续下一步。

  3. 手动创建您的连接,如下所示:
    1. 在“**连接名称**”字段中输入连接的名称。
    2. 在“**地址**”字段中输入板卡的名称或 IP 地址。

  4. 如果您不知道目标的 IP 地址,可以尝试发现它。为此,请单击“浏览”按钮。

    在弹出的对话框中,单击您的目标,然后单击“确定”以获取 IP 地址和连接名称。

    注意:如果您的目标未显示,可能是由于防火墙设置或您的目标位于不同的子网。

  5. 单击“**确定**”。您的连接将被创建并添加到“目标连接”下拉列表中。它将自动尝试连接到目标。

查看连接

  1. 单击连接下拉列表旁边的箭头。您将在下拉列表中看到所有可用连接。

所选连接名称旁边的图标将按如下方式更改连接状态:

  • 断开连接 Disconnected icon
  • 连接 Connected icon
  • 断开状态

  • 已连接状态

选择“打开连接详细信息”以修改 IP 地址/主机名或连接名称。另请参阅 更改连接详细信息 以获取更多信息。

连接到板卡

  1. 单击连接下拉列表旁边的绿色图标。
  2. 如果出现关于主机真实性的警告消息,请单击“**是**”继续连接。

    Example of the host authenticity warning
     
  3. 首次连接到目标,以及每次重启目标后,都需要下载 TCF Agent。这需要 SSH 连接。您可以选择密码身份验证或公钥登录。

通过(用户名和)密码进行身份验证

  1. 如果尚未选择,请单击“使用密码登录”选项卡。
  2. 输入您的用户名和密码。
  3. 单击“确定”进行连接。
  4. 请注意,您可以保存这些凭据。这样可以避免在下次重启目标并需要下载 TCF Agent 时重复输入。

使用公钥登录

  1. 如果尚未选择,请单击“公钥登录”选项卡。
  2. 输入您的用户名。
  3. 输入私钥文件路径,或通过使用“浏览”按钮进行浏览。
  4. 输入私钥的密码。

重置连接的登录凭据

如果您更改了用于登录板卡的用户名或密码,则可以重置应用程序用于连接到板卡的已保存登录凭据。

  1. 单击连接下拉列表旁边的箭头。

  2. 如果您当前已连接到板卡但 TCF Agent 未在板卡上运行(重启后),您将被提示输入登录信息。
  3. 选择“**清除凭据**”。下次连接到板卡时,您将看到登录信息提示。

更改连接详细信息

  1. 单击连接下拉列表旁边的箭头,然后单击“打开连接详细信息”。请注意,连接需要处于断开状态。

  2. 将打开一个编辑器窗口,您可以在其中更改连接名称、主机名和 IP 地址。

  3. 单击工具栏中的“保存”图标以应用更改。

为连接启动终端会话

您可以创建与板卡的终端会话,以命令行界面的方式与板卡进行交互。此界面允许您检查安装在板卡上的固件版本、更改板卡的名称或登录板卡的密码等。您还可以尝试一些常见的 Linux* 命令,以熟悉系统。有关常用 Linux 命令的列表,请在您喜欢的搜索引擎中搜索“基本 Linux 命令”。

  1. 连接必须已连接到目标。单击连接下拉列表旁边的箭头。
  2. **单击“启动终端”**。“终端”选项卡将打开。

在 Intel® System Studio 中工作时,您可以确定如何处理向项目添加或删除传感器、何时显示 Java* 兼容性消息等。有关步骤,请参阅下面的相应链接:

确定如何为项目添加和删除传感器

默认情况下,当您向项目添加或删除传感器时,Intel® System Studio 会检查是否需要添加或删除某些选项。例如,如果您向 C/C++ 项目添加传感器,Intel® System Studio 会检查主项目文件是否已包含传感器的头文件。如果没有,Intel® System Studio 将显示一条确认消息,询问您是否要添加头文件。

您可以禁用这些消息,并确定 Intel System Studio 如何处理添加或删除传感器。例如,您可以让 Intel System Studio 在您向项目添加新传感器时自动添加相应的头文件。

  1. 选择“**窗口**”>“**首选项**”。
  2. 从左侧选择“Intel® System Studio”。单击“**视图和透视图**”选项卡。
  3. 在“Java 传感器支持”下
    1. 您可以确定在向 IoT 项目添加新传感器时是否添加相应的原生加载库和导入。在“添加/删除传感器后添加导入”下,执行以下操作之一:
      • 要让用户选择如何处理加载库和导入,请选择“添加导入(s)前始终询问”。
      • 要将加载库和导入添加到项目中,请选择“始终自动添加导入(s)”。
      • 要添加传感器而不添加加载库和导入,请选择“从不自动添加导入(s)”。
    2. 您可以确定在每次向 IoT 项目添加新传感器时是否删除相应的原生加载库和导入。在“取消选择传感器后移除导入(s)”下,执行以下操作之一:
      • 要让用户选择如何处理加载库和导入,请选择“移除导入(s)前始终询问”。
      • 要将加载库和导入从项目中删除,请选择“始终自动移除导入(s)”。
      • 要添加传感器而不删除加载库和导入,请选择“从不自动移除导入(s)”。
  4. 要返回到默认设置,并让 Intel® System Studio 在您添加或删除传感器时每次都显示提示,请单击“**恢复默认设置**”。
  5. 单击“**确定**”以应用您的更改。

确定是否显示 Java 兼容性消息

您可以选择 Intel® System Studio 是否在您启动主机系统时检查您是否安装了正确版本的 Java,方法如下:

  • 启动 Intel® System Studio 时
  • 运行和调试 Java 项目时
  1. 选择“**窗口**”>“**首选项**”。
  2. 从左侧选择“Intel® System Studio”。单击“**Java/Maven**”选项卡。
  3. 您可以在启动应用程序时让 Intel® System Studio 检查正确的 Java 版本。在“兼容 JDK”下,执行以下操作之一:
  • 要让 Intel® System Studio 在您未安装正确版本 Java 时显示消息,请选中“**Eclipse 启动时检查兼容 Java JDK**”复选框。
  • 要启动 Intel® System Studio 而不检查 Java 版本,请清除“**Eclipse 启动时检查兼容 Java JDK**”复选框。

您可以在每次运行 Java 项目时让 Intel® System Studio 检查您板卡上的 MRAA 和 UPM 库版本是否受支持。执行以下操作之一:

  • 要检查 MRAA 和 UPM 库是否受支持,请选中“Maven 项目启动时检查支持库版本”复选框。如果库过时,您会看到一条消息要求您更新这些库。
  • 要启动 Java 项目而不进行检查,请清除“Maven 项目启动时检查支持库版本”复选框。

单击“**确定**”以应用您的更改。

确定在将项目运行到未知或不受支持的目标之前是否检查项目兼容性

您可以确定 Intel® System Studio 在尝试将项目运行到未知或不受支持的板卡之前,是否会检查项目是否与您的目标板卡兼容。

  1. 选择“**窗口**”>“**首选项**”。
  2. 从左侧选择“Intel® System Studio”>“IoT 开发”。单击“目标”选项卡。
  3. 在“项目兼容性检查”下,选择以下选项之一:
    • 为防止项目在不兼容时运行,请选择“不支持的目标从不运行,但如果目标无法识别时会提示”。如果 Intel® System Studio 在您尝试运行项目时无法识别您的目标板卡,则会显示有关该问题的消息。
    • 要提示用户决定是否尽管存在兼容性问题仍运行项目,请选择“始终询问是否运行项目”。
    • 要无论兼容性问题如何都在目标上运行项目,请选择“始终运行项目”。

向项目添加第三方库

如果您的项目需要第三方库,您可以按照以下步骤将其添加到项目中。

向 Java 项目添加第三方库

要向 Java 项目添加第三方库,请将其添加到项目的 pom.xml 文件中。有关 pom.xml 文件的更多信息,请参阅 Apache* Maven 文档

要搜索第三方库,Maven 存储库索引需要下载一次。Eclipse 可以在启动时自动下载它,但您需要设置首选项来启用此功能。选择“窗口”(Mac 上为 Eclipse)->“首选项”,然后单击“Maven”条目。在右侧的首选项中,选择“启动时下载存储库索引更新”。请立即重启 Intel System Studio 以更新存储库索引。

  1. 在“包资源管理器”中,展开项目文件夹以查看其内容。双击 pom.xml 打开它。

  2. 在应用程序窗口底部,单击“依赖项”选项卡。将显示项目的库依赖项。在“依赖项”下,单击“添加”。
  3. 在“选择依赖项”对话框中,提供要添加到项目的库的依赖项信息,例如 Group Id 和 Artifact Id。

  4. 单击“确定”以应用您的更改。该库现在列在“Maven 依赖项”下。

  5. 您也可以单击 pom.xml 选项卡以查看已添加到项目中的库列表。如果您从“传感器支持视图”向项目中添加了传感器,则相关的 UPM 传感器库也会在此处列出。

本节包含在目标上运行 Java* 物联网应用程序的步骤。

构建 Java* IoT 应用程序

您可以在 Intel® System Studio 外部运行 Java IoT 应用程序,方法是手动使用 javac 编译代码。编译需要设备上与 MRAA* 和 UPM* 库对应的 .jar 文件。可以在 iotdk-java-latest.zip 中找到最新稳定库的存档(UPM 和 MRAA .jar 文件的开发版本可以在 此处找到)。在以下命令中,使用了以下位置和名称:

  • PATH_TO_JARS 表示已解压 .jar 文件存档的位置。
  • PATH_TO_SOURCE_FILES 表示 Java 源文件的路径。
  • bin/ 是存放编译后的 Java 类的目录。
  • NAME_OF_JAR_FILE 是存放编译后的 Java 类的 .jar 文件的名称。
  • NAME_OF_MAIN_CLASS 是包含 main() 方法的类名,它是应用程序的入口点。
  1. 使用以下命令编译和打包 IoT Java 应用程序的 Java 文件:
    javac -cp PATH_TO_JARS -d bin/ PATH_TO_SOURCE_FILES
    jar cvf NAME_OF_JAR_FILE -C bin/ .
  2. 将生成的应用程序 .jar 文件(NAME_OF_JAR_FILE)复制到您的目标。在 Linux* 或 OS® X 系统上,您可以使用 scp。在 Windows* 系统上,您可以使用 WinSCP。

    例如,假设您的应用程序位于 C:\workspace\sample\src\PATH_TO_SOURCE_FILES)中的 Sample.java 源文件中,并且 IoTDK .jar 文件位于 C:\upmPATH_TO_JARS):


     
  3. 使用 scp(用于 Linux 或 OS X)或 WinSCP(用于 Windows)将文件复制到板卡:

    Example of using WinSCP

在 IoT 设备上运行 Java IoT 应用程序

在 IoTDK 设备映像中,使用 MRAA 和 UPM 所需的 .jar 文件位于 /usr/lib/java。Java 共享库位于 /usr/lib,这是 Linux 系统上共享库的默认路径。因此,设置 java.library.path 参数为“-Djava.library.path=/usr/lib”是不必要的。

  1. 要使用 MRAA 和 UPM 库在目标设备上运行您的 Java 应用程序,请使用以下命令:
    java -cp .:/usr/lib/java/*:NAME_OF_JAR_FILE NAME_OF_MAIN_CLASS

    在下面的示例应用程序中,您将输入:

    java -cp .:/usr/lib/java/*:sample.jar Sample
     

  2. 使用 ssh 或 PuTTY 连接到板卡并运行您的应用程序。在上面的示例应用程序中,您将运行 sample.jar 文件中的 Sample 类。您可以在终端窗口中查看输出,如下所示:
     

Intel® System Studio:故障排除和 FAQ

本指南包含使用 Intel® System Studio 编程您的板卡的故障排除信息和常见问题解答。有关安装应用程序的一般说明,请参阅 Intel® System Studio 2018 Beta 版安装指南。有关确保 Docker 正常工作的步骤,请参阅 设置 Intel® System Studio

安装和运行 Intel® System Studio

使用 Intel® System Studio

处理传感器

解决错误消息

如何解决使用 Docker 和 Intel System Studio 时的错误

请访问以下网站并遵循该指南,它将引导您找到解决错误的方案:

https://software.intel.com/en-us/articles/errors-using-docker-with-intel-system-studio

如何启动和配置新项目/示例项目?

有关步骤,请参阅以下内容:

创建新的 IoT Java* 项目

如果我想使用其他 UPM 传感器,我需要更改什么?

请参阅 在 Intel® System Studio 中使用传感器

我查看了所有 UPM 库文件,但我的传感器不受 UPM 支持。我仍然可以使用它吗?

抱歉,由于有数千种传感器可用,您可能想要使用尚未在 UPM 中实现的传感器。这并非不可能。

在这种情况下,您的起点是确定您正在处理哪种类型的传感器,因为 MRAA 提供了一些通用接口,可能有助于您成功使用传感器。有时,只需读取模拟引脚的值并进行处理即可,但其他传感器则复杂得多。

通常来说,尝试识别一个与您拥有的传感器类似的、已存在于 UPM 中的传感器,并查看其代码以了解其工作原理。您会发现不同的制造商可能在相似的传感器上使用相同的芯片,在这种情况下,UPM 代码应稍作修改或无需修改即可正常工作。当不是这种情况时,请尽可能使用现有的源代码和示例,但最重要的是,参考传感器数据手册来指引您。

更多详情,包括移植 Arduino* 示例和构建 UPM,请访问:http://iotdk.intel.com/docs/master/upm/pages.html

我已经编写了一个新的传感器接口。有可能将其添加到 UPM 库吗?

我们实际上鼓励社区为 UPM 库贡献代码,添加您在项目中使用的新的出色传感器。接口代码必须遵守一些准则,我们才能将其添加到库中。因此,我们鼓励您阅读我们的贡献指南,这会加快审核过程。您可以在此处找到更多信息:http://iotdk.intel.com/docs/master/upm/contributions.html

我可以使用 Intel® System Studio 来构建、测试和维护我的新 UPM 传感器吗?

这项任务并不容易,但经过努力是可能的。UPM 使用 CMake* 生成 makefiles 来编译源代码。虽然有一个可用于此类项目的 Eclipse 插件(CMakeBuilder),但大多数用户报告说,使用 Intel® System Studio 中默认提供的现有 makefile 项目类型并单独运行 CMake 会取得更好的效果。为此,您需要将您的 UPM 克隆导入 Intel® System Studio 作为 Makefile 项目,并相应地设置工具链。要理解此过程,最好单独构建一次 UPM。您可以在构建指南中找到更多信息:http://iotdk.intel.com/docs/master/upm/building.html

如何设置 C++11?

请遵循以下步骤,这些步骤已在 Windows* 7、配备 Intel® Edison 板卡和 Intel® IoT Developer Kit v1.0 版本 Intel® System Studio 的系统上进行了测试。

  1. 选择“**项目**”>“**属性**”。
  2. 导航到“**C/C++ Build**”>“**Settings**”>“**Tool Settings**”>“**Cross G++ Compiler**”>“**Miscellaneous**”。
  3. 在“**其他标志**”字段的末尾添加 -std=c++11

    来源:http://wiki.eclipse.org/CDT/User/FAQ#CDT_does_not_recognize_C.2B.2B11_features

    Navigate to the Other Flags option
  4. 导航到“**C/C++ General**”>“**Preprocessor Include Paths, Macros etc.**”>“**Providers**”。

    来源:http://stackoverflow.com/questions/17457069/enabling-c11-in-eclipse-juno-kepler-luna-cdt
  5. 选择“**CDT CROSS GCC Built-in Compiler settings**”,然后在“**获取编译器规格的命令**”字段的末尾添加 -std=c++11

    Type the appropriate text in the Command to get compiler specs field
  6. 要重建索引,请选择“**项目**”>“**C/C++ Index**”>“**Rebuild**”。

    Select Rebuild

我可以同时使用多个连接到同一板卡吗?

否。在每个项目中,您只能选择一个连接。但是,您可以创建并将多个远程系统连接分配给同一个 IP 地址(在本例中,是您的板卡的 IP 地址)。

我可以使用 USB/串行电缆从 Intel® System Studio(无需 Internet 连接)传输数据并运行/调试程序吗?

否。Intel® System Studio 不提供通过 USB 或串行电缆传输数据的任何功能。

如何重命名我的项目?

  1. 右键单击“项目资源管理器”选项卡中的项目,然后选择“**重命名**”。
  2. 输入项目的新名称。
  3. 右键单击重命名的项目,然后选择“**Index**”>“**Rebuild**”。
  4. 右键单击重命名的项目,然后选择“**Clean Project**”。
  5. 要重新构建项目,请选择“**项目**”>“**构建所有**”。
  6. 仅适用于 C/C++
    1. 如果您选择创建启动配置,请选择“**运行**”>“**调试配置…**”,然后在 C/C++ Remote Application 类别中选择具有项目旧名称的启动配置。
    2. 更改启动配置顶部的“**名称**”。
    3. 单击“**搜索项目…**”按钮选择 C/C++ 应用程序,并替换“**远程 C/C++ 应用程序的绝对文件路径**”字段中的旧项目名称。
    4. 将“**应用程序执行前的命令**”设置为新项目名称。

如何恢复首次运行应用程序时显示的介绍窗口/Intel® System Studio 选项卡?

选择“帮助”>“入门”。要在此界面右侧显示此选项卡,请单击窗口右上角的“**恢复**”图标。

如何创建新的目标连接?

有关步骤,请参阅 创建、查看和连接到您的板卡(使用 SSH 连接)

我该如何调试我的应用程序?

如果您选择使用项目创建启动配置,但跳过了设置新连接的步骤,则可以通过执行 如何创建新的目标连接? 中的步骤来完成。

要调试您的应用程序,请选择“**运行**”>“**调试配置…**”,展开“**C/C++ Remote Application**”类别。选择与您的项目同名的启动配置,然后单击“**调试**”。将打开一个对话框,要求输入连接到目标设备的用户名和密码。输入设置板卡时指定的用户名和密码。

或者,您也可以单击工具栏中的运行/调试启动配置按钮旁边的箭头,然后选择启动配置。

我正在运行自己的程序,但开始收到“上传文件时出错”消息。几分钟前还可以,我该怎么办?

这通常发生在您将程序保持在设备上运行时并尝试再次上传时,因为应用程序二进制文件已被使用。您可以尝试在控制台中停止程序作为第一步。按住 Intel 板上的重置按钮将清除草图文件夹和正在运行的程序。

另一个简单的解决方法是执行 IDE 的软件断开连接。选择“**窗口**”>“**显示视图**”>“**其他**”,然后选择“**远程系统**”(在“远程系统”组下,在较新版本的 Intel® System Studio 中现在是默认视图)。在此新选项卡中,右键单击您的板卡并选择“**断开连接**”,这将终止正在运行的进程并解决问题。

无法启动 - “无法启动所选项目,且没有最近的启动项”消息

当 Intel® System Studio 无法启动当前选定项目时,将显示此消息。请单击现有项目,然后重试,或者选择“**运行**”>“**调试配置…**”并从 C/C++ Remote Application 类别中选择一个启动配置。

我可以将安装移动到另一个目录吗?

否,不推荐这样做,并且 Intel® System Studio 在移动安装文件后可能无法正常工作。

我收到了“无法连接 sshHD on XXX.XXX.XXX.XXX:22”错误,即使我的 IP 地址是正确的。我该怎么办?

问题很可能是代理设置不正确。请执行以下操作来设置正确的代理设置:

  1. 选择“**Windows**”>“**首选项**”。
  2. 导航到“**General**”>“**Network Connections**”。
  3. 如果您的 Intel® Edison 板卡与您的计算机在同一个 LAN/WLAN 上,请在代理设置中选择“**Direct**”连接。

我该如何提供反馈?

您可以在论坛 https://software.intel.com/en-us/forums/internet-of-things 提供反馈。

我无法打开 Intel® System Studio

您的任何文件夹名称中是否包含空格?

如果您的 Intel® System Studio 文件夹的完整文件路径包含空格,您可能无法使用批处理文件来运行 Intel® System Studio。如果您无法移动 Intel® System Studio 文件夹,则可能需要编辑 iss-iot-launcher.bat 文件并硬编码完整文件路径。例如,将第一行更改为:

export DEVKIT_HOME=$(dirname $0)/

更改为以下内容(请提供您安装的相应文件夹路径):

export DEVKIT_HOME="/my parent folder/my iss iot folder/"

尝试启动 Intel® System Studio 时,命令行窗口出现并消失,然后什么也没有发生

批处理文件与您当前的开发设置不兼容。通过命令行运行批处理文件以查看任何错误消息,并尝试手动解决问题,如下所示:

  1. 从“**开始**”菜单中,选择“**运行**”。
  2. 输入命令:cmd
  3. 在命令行窗口中,导航到存储 iss-iot-launcher.bat 的目录。例如,cd c:\Users\username\Downloads\iss-iot-­win
  4. 输入命令:iss-iot-launcher
  5. 仔细查看输出中的错误消息。

“无法打开 Intel® System Studio,因为它来自未识别的开发者”消息

如果您使用的是 OS® X 系统,可能会看到此消息。请执行以下操作:

  1. 右键单击 iss-iot-launcher.sh,然后选择“**打开方式**”>“**终端**”。
  2. 单击“**打开**”以运行批处理文件。您只需执行一次此操作。

“未找到 Java 虚拟机”消息

如果您看到“未找到 Java 虚拟机”消息,如下图所示,则必须安装 JRE 或 JDK。

"No Java virtual machine" message

“Windows 找不到 eclipse.exe”消息

当您尝试使用 32 位 Windows* OS 打开开发套件包时,将显示“Windows 找不到 eclipse.exe”消息。您需要对开发套件包进行一些调整。

  1. 软件下载页面下载并解压缩适用于 Windows 的 Arduino IDE。
  2. 在解压后的 Arduino IDE 文件夹中,导航到 hardware\tools\edison\sysroots\ 并复制整个 i686­pokysdk­mingw32 目录。
  3. iotdk­ide­win 文件夹中,转到 \devkit­x86\sysroots 文件夹。将 i686­pokysdk­mingw32 文件夹粘贴在此处。
  4. 使用记事本或类似的文本编辑器编辑 iss-iot-­launcher.bat 脚本。更改以下行:
    set PATH=%PATH%;%DEVKIT_HOME%\devkit­x86\sysroots\x86_64­pokysdk­mingw32\usr\bin\i586­poky­linux;%DEVKIT_HOME%\iot­devkit\devkit­debugger
    更改为以下内容:
    set PATH=%PATH%;%DEVKIT_HOME%\devkit­x86\sysroots\i686­pokysdk­mingw32\usr\bin\i586­poky­linux;%DEVKIT_HOME%\iot­devkit\devkit­debugger
  5. 从以下位置下载适用于 C/C++ 开发人员的 Intel® System Studio 的 32 位 Windows 版本:https://eclipse.org/downloads/packages/release/Kepler/SR2
  6. 解压缩 Intel® System Studio 的 32 位版本,并用它替换 iotdk­ide­win 文件夹中的 Intel® System Studio 版本。
  7. 双击 ­liss-iot-launcher.bat 以运行 Intel® System Studio。

在 Intel® System Studio 中运行程序时出现“无法连接 sshd”错误消息

如果您的 Intel® Edison 板卡使用 Wi-Fi 连接,则必须在板卡上设置密码,否则您将收到 SSH 连接错误。

  1. 要设置密码,请通过串行连接到您的板卡并输入命令:configure_edison ­­password
  2. 按照屏幕上的说明设置您的密码。

“找不到正确的 JDK 或未找到 JDK”消息

Intel® System Studio 依赖于 Java* Runtime Engine (JRE) 来执行。您应该安装 64 位版本的 Java SE Development Kit 8(也称为 JDK 版本 1.8)。Intel® System Studio 还支持 OpenJDK 8 及更高版本。

您可以从 Oracle 下载 JDK,网址为 http://www.oracle.com/technetwork/java/javase/downloads/index.html。请安装64 位 JDK(在下载名称中以x64表示),而不是 32 位(x86)版本。

如果未安装正确的 JDK,您可能会看到类似以下内容的警告消息:

Example of an error message about installing the JDK

如果您在安装 JDK 后仍然看到此消息,则可能需要手动选择 Intel® System Studio 中的 JDK。

**注意:** 以下步骤与 Java 开发相关。如果您计划使用 C/C++ 开发,可以选中“**不再显示此消息**”复选框来关闭该消息。

  1. 在 Intel® System Studio 中,选择“**窗口**”>“**首选项**”。
  2. 展开“**Java**”类别,然后单击“**已安装的 JRE**”。将显示已安装的 JRE 和 JDK 列表。
  3. 如果您的 JDK 未包含在列表中,请单击“**搜索**”。浏览并选择包含 JDK 的文件夹,然后单击“**确定**”。您的 JDK 将被添加并显示在“已安装的 JRE”列表中。
  4. 选择您的 JDK,然后单击“**确定**”。
  5. 关闭并重新启动 Intel® System Studio,以确认消息不再出现。

“启动的项目目标不受支持”消息

当您尝试在不匹配项目类型的设备上运行项目时,将显示此消息。例如,如果您尝试在安装了 Wind River Linux* 的目标上运行为 Ubuntu 构建的项目,可能会看到此消息。有关将项目转换为正确项目类型的步骤,请参阅 更改项目类型

Unsupported target for the launched project message

新项目的索引创建失败

对于 Windows 8 用户:在创建新项目时,有时索引会失败。如果发生这种情况,您需要重新索引。在“项目浏览器”窗口中右键单击项目,然后选择“索引”>“重建”。

图标、滚动、启动屏幕等的显示问题

Intel® System Studio 基于 Eclipse* Mars,它不支持 GTK 3。如果您的主机运行 Linux 并使用 GTK 3,请务必将环境变量 SWT_GTK3 设置为 0,如 在 Linux* 上设置 Intel® System Studio中所述。

请注意,这是一种变通方法。即使采取了这种变通方法,您仍可能遇到显示问题,例如图标部分显示、滚动不正常工作或应用程序启动屏幕出现问题。只要您遵循本指南中的步骤,这些问题就不应影响项目创建和开发。

代码示例不起作用!

根据您正在使用的 IoT 板卡类型,您可能需要在板卡上运行一些其他命令才能在 Intel® System Studio 中运行代码示例。有关步骤,请参阅 启用代码示例

我无法创建项目!

如果您在创建项目时遇到问题(例如,单击“完成”后,项目创建消失但项目未创建),则您的 Docker 镜像可能已损坏。请尝试以下操作:

  1. 在 Docker QuickStart Terminal(适用于 Windows 主机)或 Terminal Window(适用于 OS X 或 Linux 主机)中,运行以下命令:
    docker images
    docker rmi <IMAGE ID>

    IMAGE ID 通常为 8-10 个字符,包含数字和字母。例如,如果您的镜像 ID 为 a2e7c3b0ca22,则输入:

    docker rmi a2e7c3b0ca22

    如果您的 Docker 镜像正在使用中,您可能需要使用 -f 强制删除。

    docker rmi -f a2e7c3b0ca22
  2. 接下来,重新下载您的 Docker 镜像。根据您尝试创建项目的目标操作系统,输入的命令会有所不同,如下所示:
    操作系统 命令
    Yocto Project 构建的 Linux docker pull inteliotdevkit/intel-iot-yocto
    Intel® IoT Gateway Software Suite(64 位) docker pull inteliotdevkit/intel-iot-wrs-64
    Intel® IoT Gateway Software Suite(32 位) docker pull inteliotdevkit/intel-iot-wrs-32
    Ubuntu* 16.04 LTS docker pull inteliotdevkit/intel-iot-ubuntu
    Wind River* Linux* docker pull inteliotdevkit/intel-iot-wrs-pulsar-64
  3. 重启 Intel® System Studio,然后再次尝试创建项目。

同步检测出现“未知”版本消息(适用于 Wind River Pulsar* Linux* 用户)

请中止同步过程。

接下来,检查您的 MinnowBoard MAX*(装有 Wind River Pulsar Linux)是否已连接到 Internet。如果您的连接需要代理设置,请在 .bashrc 中添加正确的环境变量。

确保您有 Internet 连接后,请通过右键单击连接并选择“同步包…”来再次尝试同步您的包。

我无法安装我的软件包;安装在三分钟后失败

软件包安装过程的超时时间为三分钟。如果您想安装一个安装时间较长的软件包,可以手动安装(直接在容器内)。

或者,如果您熟悉 bash 脚本,可以在 ${ISS_IOT_HOME}/iot/script 文件夹中更改超时设置。

  • 基于 Yocto Project 的 Linux(适用于 Intel® Edison 主板、Intel® Galileo 主板、MinnowBoard MAX):更改以“opkg”开头的脚本。
  • Intel® IoT Gateway Software Suite 和 Wind River Pulsar Linux(适用于 32 位和 64 位 Intel® IoT Gateway、MinnowBoard MAX):更改以“smart”开头的脚本。
  • Ubuntu(适用于 64 位 Intel® IoT Gateway):更改以“apt-get”开头的脚本。

我无法同步软件包:“找不到软件包”错误

这可能意味着您的软件包存储库与 Docker 容器中注册的存储库不同。

要了解如何向 Docker 容器添加/删除容器,请参阅:https://software.intel.com/en-us/how-to-add-repositories

除了连接之外,添加软件包存储库的相同步骤也适用于目标设备。

创建 Java Maven 项目时,过程失败并产生多个错误消息

如果您正在尝试创建 Java 项目,并且看到多个错误消息(如下所示:“无法构建 Maven 项目”、“更新 Maven 配置时出错”、“发生问题”),请尝试以下操作:

  1. 首先,请仔细检查您是否具有 Internet 连接。
  2. 如果您位于代理服务器后面,则需要按照 https://maven.apache.org/guides/mini/guide-proxies.html 中的说明更改 Maven 设置文件。
  3. 关闭 Intel System Studio,重新打开它,然后尝试创建新的 Java Maven 项目。
  4. 如果问题仍然存在,请删除位于 ${user.home}/.m2/repository 的 Maven 存储库文件夹。
  5. 关闭 Intel System Studio,重新打开它,然后尝试创建新的 Java Maven 项目。该过程现在应该可以顺利完成。

我无法安装 Docker/Intel® System Studio

如果您在安装 Docker 或 Intel® System Studio 时遇到问题,您可以尝试卸载应用程序然后重试。卸载 Intel® System Studio 时,请务必同时卸载 Docker 和 Oracle* VM VirtualBox(如果适用)。之后,您可以重新安装这些组件,并尝试使用适用于 WindowsMacLinux 主机计算机的步骤重新安装 Intel® System Studio。

对于 Windows 主机

检查以下常见安装问题:

  • 您的主机计算机上的虚拟化(在 BIOS 中通常称为 Intel VT-x)必须已启用。
  • 对于运行 Windows® 10 Pro、Enterprise 或 Education 的主机计算机,请务必使用 Docker for Windows* 而不是 Docker Toolbox*。对于所有其他兼容版本的 Windows 的主机计算机,我们有一个内部解决方案,您无需自行安装 Docker。
  • Docker for Windows 需要启用 Hyper-V。
  • 请务必以管理员身份运行安装程序(右键单击程序并选择“以管理员身份运行”)。
  • 如果您在具有公司代理的网络上工作,请务必遵循所有说明,将正确的代理信息提供给 Docker。

Docker Toolbox

如果您已安装 Docker Toolbox,并且在安装过程中未选中“安装带有 NDIS5 驱动程序的 VirtualBox”复选框,则需要按照以下步骤卸载并重新安装 Docker 和 Intel® System Studio 所需的任何其他组件:

  1. 卸载 Docker Toolbox 和 Oracle VM VirtualBox。
  2. 右键单击 Docker Toolbox 安装程序,然后选择“以管理员身份运行”。
  3. 按照设置向导中的步骤进行操作,直到出现“选择附加任务”页面。
  4. 选中“安装带有 NDIS5 驱动程序的 VirtualBox”复选框,然后继续安装 Docker Toolbox。
  5. 设置完成后,运行 Docker Quickstart Terminal 并等待过程完成。可能需要 5-10 分钟。之后,继续从 iss_ide_eclipse-launcher.bat 文件运行 Intel® System Studio。

在 Windows 主机上安装 Intel® System Studio 时,VirtualBox* 尝试创建虚拟机时可能会遇到问题。请尝试以下操作:

  1. 打开“网络连接”。
  2. 右键单击“VirtualBox Host-Only Network”适配器(作为安装过程的一部分创建),然后选择“属性”。
  3. 选中“VirtualBox NDIS6 Bridged Networking Drive”复选框。单击“确定”。
  4. 再次右键单击网络适配器,然后选择“禁用”。
  5. 再次右键单击网络适配器,然后选择“启用”。

有关更多故障排除信息,请参阅 http://stackoverflow.com/questions/33725779/failed-to-open-create-the-internal-network-vagrant-on-windows10

Docker for Windows

如果在运行 Docker For Windows 时看到以下消息,则需要启用 Hyper V。

  1. 在“开始”菜单中,搜索 Windows features,然后从搜索结果中选择“打开或关闭 Windows 功能”。
  2. 在“Windows 功能”对话框中,确保选中了“Hyper-V”复选框,然后单击“确定”。系统可能会提示您重新启动计算机以应用这些更改。

© . All rights reserved.