Pour le moment, j'essaie d'installer Arduino sur mon ordinateur Ubuntu 10.04 (32 bits). J'ai téléchargé la dernière version à l'adresse http://arduino.cc/en/Main/Software , ajouté le répertoire et décompressé le package. Lorsque j'essaie d'exécuter ./arduino, j'obtiens l'erreur suivante:
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
Voici ma sortie 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)
Des suggestions à ce sujet? J'essaie d'installer arduino sans le paquet 'arduino'.
J'ai essayé de l'installer avec apt-get (Sudo apt-get install arduino
).
Lorsque j'essaie de démarrer arduino (en utilisant la commande arduino
), l'erreur suivante sera générée:
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
Mise à jour: J'ai vu que j'avais installé plusieurs versions de jre (Sun et open). J'ai donc désinstallé le jre ouvert.
Maintenant, lorsque j'appelle arduino
, une nouvelle erreur se produit:
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)
J'ai également eu ce problème après avoir installé Arduino en utilisant apt-get comme décrit en détail sur http://playground.arduino.cc//Linux/Ubunt
J'ai trouvé la solution en changeant mon runtime JDK de 7 à 6 en utilisant
Sudo update-alternatives --config Java
Cela a été résolu en copiant librxtxParallel.so
et librxtxSerial.so
dans /usr/lib/
et les détails de ce message: http://www.arduino.cc/cgi-bin/yabb2/YaBB .pl? num = 1238062036/all
J'ai eu ce problème avec JDK7 installé. J'ai réussi à revenir à mon JDK6 avec cette commande:
Sudo update-alternatives --config Java
Et ça a fait l'affaire
Par défaut, la version Java utilisée dans Ubuntu (et cela est toujours le cas dans 11.10) est OpenJDK. Vous pouvez vérifier quelle version de Java est utilisée avec
Java -version
à la ligne de commande. Il existe deux packages pour OpenJDK dans Ubuntu, openjdk-6-jre
et openjdk-6-jre-headless
. La version sans tête est destinée aux ordinateurs sans interface graphique. Vous avez la version sans tête installée, ce qui provoque cette erreur lorsque le programme arduino tente de créer des éléments d'interface graphique.
Pour résoudre ce problème, installez la version sans tête. Il prendra le relais de la version sans tête et l'arduino IDE démarrera.
apt-get install openjdk-6-jre
Lorsque vous avez installé arduino à partir des référentiels, cette dépendance aurait dû être gérée pour vous. J'ai soulevé un bogue pour cela ( entrée de bogue )
La réponse a été déplacée mais ne peut pas être trouvée à StackOverflow. Quoi qu’il en soit, pour que les autres sachent, une solution possible (qui a fonctionné pour moi) est d’ajouter
-Djava.awt.headless = true
comme option dans Java invocation du script Arduino.
J'espère que ça aide