无法安装 Arduino

无法安装 Arduino

目前,我尝试在我的 Ubuntu 10.04(32 位)计算机上安装 Arduino。我下载了最新版本http://arduino.cc/en/Main/Software,进入目录并解压包。当我尝试运行 ./arduino 时,出现以下错误:

Exception in thread "main" java.lang.ExceptionInInitializerError
    at processing.app.Base.main(Base.java:112)
Caused by: java.awt.HeadlessException
    at sun.awt.HeadlessToolkit.getMenuShortcutKeyMask(HeadlessToolkit.java:231)
    at processing.core.PApplet.<clinit>(Unknown Source)
    ... 1 more

这是我的 java -version 输出:

java version "1.6.0_20"
OpenJDK Runtime Environment (IcedTea6 1.9.5) (6b20-1.9.5-0ubuntu1~10.04.1)
OpenJDK Server VM (build 19.0-b09, mixed mode)

对此有什么建议吗?我尝试安装没有“arduino”包的 arduino。

我尝试使用 apt-get ( sudo apt-get install arduino) 来安装它。

当我尝试启动 arduino(使用arduino命令)时会导致以下错误:

Exception in thread "main" java.lang.ExceptionInInitializerError
    at processing.app.Preferences.load(Preferences.java:553)
    at processing.app.Preferences.load(Preferences.java:549)
    at processing.app.Preferences.init(Preferences.java:142)
    at processing.app.Base.main(Base.java:188)
Caused by: java.awt.HeadlessException
    at sun.awt.HeadlessToolkit.getMenuShortcutKeyMask(HeadlessToolkit.java:231)
    at processing.core.PApplet.<clinit>(PApplet.java:224)
    ... 4 more

更新: 我发现我安装了多个版本的jre(sun和open)。所以我卸载了open jre。

现在,当我调用时,arduino我收到一个新错误:

java.lang.UnsatisfiedLinkError: no rxtxSerial in java.library.path thrown while loading gnu.io.RXTXCommDriver
Exception in thread "main" java.lang.UnsatisfiedLinkError: no rxtxSerial in java.library.path
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1734)
    at java.lang.Runtime.loadLibrary0(Runtime.java:823)
    at java.lang.System.loadLibrary(System.java:1028)
    at gnu.io.CommPortIdentifier.<clinit>(CommPortIdentifier.java:123)
    at processing.app.Editor.populateSerialMenu(Editor.java:965)
    at processing.app.Editor.buildToolsMenu(Editor.java:717)
    at processing.app.Editor.buildMenuBar(Editor.java:502)
    at processing.app.Editor.<init>(Editor.java:194)
    at processing.app.Base.handleOpen(Base.java:698)
    at processing.app.Base.handleOpen(Base.java:663)
    at processing.app.Base.handleNew(Base.java:578)
    at processing.app.Base.<init>(Base.java:318)
    at processing.app.Base.main(Base.java:207)

答案1

这是通过复制librxtxParallel.so并解决librxtxSerial.so/usr/lib/到此帖子中的详细信息http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1238062036/all

答案2

默认情况下,Ubuntu 中使用的 Java 版本(在 11.10 中仍然如此)是 OpenJDK。您可以使用以下命令检查正在使用的 Java 版本

java -version

在命令行中。Ubuntu 中有两个 OpenJDK 软件包,openjdk-6-jreopenjdk-6-jre-headless。无头版本适用于没有 GUI 的计算机。您安装了无头版本,当 arduino 程序尝试创建 GUI 元素时会导致此错误。

要解决此问题,请安装非无头版本。它将接管无头版本,并且 arduino IDE 将启动。

apt-get install openjdk-6-jre

当你从存储库安装 arduino 时,这个依赖关系应该已经为你处理好了。我为此提出了一个错误(错误条目

答案3

我在使用 apt-get 安装 arduino 后也遇到了这个问题,详情请见http://playground.arduino.cc//Linux/Ubuntu

我发现解决方案是使用以下方法将我的 JDK 运行时从 7 切换到 6

sudo update-alternatives --config java

答案4

答案已被移动,但在 StackOverflow 上找不到。无论如何,为了让其他人知道,一个可能的解决方案(对我有用)是添加

-Djava.awt.headless=true

作为 Arduino 脚本的 java 调用中的选项。

希望能帮助到你

相关内容