Technologie d'assistance introuvable. AWTError

69
$ java -jar aprof-plot.jar
Exception in thread "main" java.awt.AWTError: Assistive Technology not found: org.GNOME.Accessibility.AtkWrapper
    at java.awt.Toolkit.loadAssistiveTechnologies(Toolkit.java:807)
    at java.awt.Toolkit.getDefaultToolkit(Toolkit.java:886)
    at java.awt.Toolkit.getEventQueue(Toolkit.java:1734)
    at java.awt.EventQueue.invokeLater(EventQueue.java:1264)
    at aprofplot.Main.newWindow(Main.java:33)
    at aprofplot.Main.main(Main.java:359)

Les explications possibles que j'ai vues ici consistaient à installer Java-access-bridge. Mais je suis incapable d'installer libaccess-java-bridge.

Shiwangi Singh
la source

Réponses:

128

J'ai rencontré cette même erreur sur mon serveur Ubuntu 15.10 mais je ne voulais pas installer la version d'OpenJDK sans interface graphique en raison du nombre de dépendances supplémentaires. Une solution plus simple consistait simplement à désactiver les technologies d'assistance.

Cela peut être fait en éditant le accessibility.propertiesfichier pour OpenJDK 8 (changez la version pour celle qui est réellement utilisée sur votre système):

sudo vim /etc/java-8-openjdk/accessibility.properties

Commentez la ligne suivante:

#assistive_technologies=org.GNOME.Accessibility.AtkWrapper

Vous pouvez aussi éditer cette ligne par programme:

sudo sed -i -e '/^assistive_technologies=/s/^/#/' /etc/java-*-openjdk/accessibility.properties
rêver
la source
C'est la meilleure solution. Fonctionne aussi pour Android-sdk / tools / draw9patch (Android SDK Tools)
gorlok
Cela a également fonctionné sur mon Ubntu 15.10 pour la réparation freemindqui ne partait pas autrement
rubo77 23/02/2016
17
cela m'est arrivé aujourd'hui, deux ans et demi après cette réponse. au lieu de java-8 c'est java-11 maintenant, à part ça, m'a aidé, merci
marosg
1
Merci, cela a fonctionné pour moi pour démarrer un autre logiciel appelé OpenRefine. java-11-openjdk ici aussi.
Nikhil VJ
Travaillé comme un charme, faisant juste quelques ajustements. Ce n'est pas Java-8 ici.
Alexandre Campos
21

Lire le fil suivant. J'ai réussi à échapper à ce problème en désinstallant OpenJDK 8 sans tête et en installant OpenJDK 8.

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=798794

Les commandes que j'ai exécutées:

sudo dpkg -l | grep openjdk  

Ceci permet de vérifier que vous utilisez bien la version sans tête de JAVA, donc aucune bibliothèque de graphes n'est disponible.

sudo apt-get remove openjdk-8-jre-headless

Ceci est pour supprimer la version sans tête.

sudo apt-get install openjdk-8-jre

Ceci consiste à installer une version non-headless de Java.

danielmacho72
la source
9

Pour ceux qui n'ont pas d'accès root sur leurs machines pour modifier le fichier de configuration ou ne veulent pas installer le JRE complet: ajoutez -Djavax.accessibility.assistive_technologies=" "à votre commande, par exemple

$ java -jar aprof-plot.jar -Djavax.accessibility.assistive_technologies=" "

Notez que cela " "est important, utiliser simplement "rien" comme paramètre fera que le JRE chargera toujours ce qui est défini /etc/java-8-openjdk/accessibility.properties.

Marco Schuster
la source
3
L'ajout n'a pas résolu pour moi. Le préfixe a changé le message en Assistive Technology not found: non suivi de org.GNOME.Accessibility.AtkWrapper.
Fabio Iotti
Cela a fonctionné pour moi avec Ubuntu 18.04 lorsque Java est revenu à la version 8 à partir de 10 (car openjfx n’était pas encore disponible précompilé). Les autres méthodes énumérées dans cette question ne fonctionnaient pas pour moi.
Chris Good
4

Même problème. Dans mon cas, je ne pouvais pas exécuter FastQC.
C'est ce que j'ai fait:

$ sudo apt-get remove openjdk-11-jre-headless

J'ai vérifié que java était parti

$ java -version
bash: /usr/bin/java: No such file or directory
$ sudo apt-get install openjdk-8-jre

Problème résolu.

Max Medina
la source
2

Je devais désinstaller openjdk-11-jre, par exemple:

sudo apt remove openjdk-11-jre

ou

sudo apt remove openjdk-11*

supprimer tous les paquets openjdk-11 sur votre système.

Cela oblige votre programme à s'exécuter sur openjdk-8-jre au lieu de openjdk-11-jre, comme je l'avais déjà installé. Apparemment, Java Assistive Technology ne fonctionne pas sur le paquet openjdk-11-jre. Je pense qu’il existe également un moyen de spécifier la version de Java à exécuter, mais je ne la connais pas par cœur et je suis sûr qu’il existe un autre article sur ce sujet.

4n0m4l0u5
la source
1
Vous n'avez même pas besoin de désinstaller openjdk-11-jdk ou openjdk-11-jre: askubuntu.com/questions/315646/…
karel le
0

Inspiré de la réponse de Marco, mais pour moi, cela ne fonctionne que dans cet ordre (en amont):

java -Djavax.accessibility.assistive_technologies=" " -jar aprof-plot.jar

Le problème a été résolu et le programme a été lancé avec succès (dans mon cas, argouml.jar fakesmtp.jar).

Utilisation de Java 8 sur Ubuntu 2019.04

Nicolas Raoul
la source