Ubuntu – Can’t run Java applications (like logisim) due to “Assistive Technology not found” error

javalubuntu

I tried it and the errors are:

Exception in thread "main" java.awt.AWTError: Assistive Technology not found: org.GNOME.Accessibility.AtkWrapper
at java.desktop/java.awt.Toolkit.newAWTError(Toolkit.java:472)
at java.desktop/java.awt.Toolkit.fallbackToLoadClassForAT(Toolkit.java:488)
at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:177)
at java.base/java.util.HashMap$KeySpliterator.forEachRemaining(HashMap.java:1608)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:497)
at java.desktop/java.awt.Toolkit.loadAssistiveTechnologies(Toolkit.java:532)
at java.desktop/java.awt.Toolkit.getDefaultToolkit(Toolkit.java:613)
at java.desktop/javax.swing.UIManager.getSystemLookAndFeelClassName(UIManager.java:660)
at com.cburch.logisim.gui.start.Startup.parseArgs(Startup.java:250)
at com.cburch.logisim.Main.main(Main.java:32)

The error seems to be…

Caused by: java.lang.ClassNotFoundException: org.GNOME.Accessibility.AtkWrapper
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:582)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:190)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:499)
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:374)
at java.desktop/java.awt.Toolkit.fallbackToLoadClassForAT(Toolkit.java:485)
… 14 more

OUTPUT for apt-cache policy logicsim logisim

logisim:
  Installed: 2.7.1~dfsg-1
  Candidate: 2.7.1~dfsg-1
  Version table:
 *** 2.7.1~dfsg-1 500
        500 http://in.archive.ubuntu.com/ubuntu bionic/universe amd64 Packages
        500 http://in.archive.ubuntu.com/ubuntu bionic/universe i386 Packages
        100 /var/lib/dpkg/status
N: Unable to locate package logicsim

OUTPUT for update-java-alternatives -l

java-1.11.0-openjdk-amd64      1101       /usr/lib/jvm/java-1.11.0-openjdk-amd64
java-1.8.0-openjdk-amd64       1081       /usr/lib/jvm/java-1.8.0-openjdk-amd64

Best Answer

I can confirm your issue on clean Ubuntu 18.04 LTS.
So I reported bug 1788267 to the LaunchPad (currently it is marked as duplicate of bug 1788250 and exists in Debian too as bug 900912).

It is unbelievable - many Java applications are broken and show the same error involving java.awt.AWTError: Assistive Technology not found: org.GNOME.Accessibility.AtkWrapper.

Update 20180913 - bug is fixed. Steps below are not needed (they are included in the updated package).


But we can fix this problem by disabling Assistive Techonologies inside /etc/java-11-openjdk/accessibility.properties:

sudo sed -i "s/^assistive_technologies=/#&/" \
/etc/java-11-openjdk/accessibility.properties

and/or inside /etc/java-8-openjdk/accessibility.properties

sudo sed -i "s/^assistive_technologies=/#&/" \
/etc/java-8-openjdk/accessibility.properties