Không tìm thấy công nghệ hỗ trợ 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)

Có thể giải thích tôi thấy ở đây là cài đặt cầu truy cập Java. Nhưng tôi không thể cài đặt libaccess-java-bridge.

Câu trả lời:


128

Tôi gặp phải lỗi tương tự trên máy chủ Ubuntu 15.10 của mình nhưng không muốn cài đặt phiên bản OpenJDK không đầu do số lượng phụ thuộc bổ sung. Một giải pháp đơn giản hơn là chỉ cần vô hiệu hóa các công nghệ hỗ trợ.

Điều này có thể được thực hiện bằng cách chỉnh sửa accessibility.propertiestệp cho OpenJDK 8 (thay đổi phiên bản thành bất kỳ ứng dụng nào thực sự được sử dụng trên hệ thống của bạn):

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

Nhận xét dòng sau:

#assistive_technologies=org.GNOME.Accessibility.AtkWrapper

Ngoài ra, bạn có thể chỉnh sửa dòng này theo chương trình:

sudo sed -i -e '/^assistive_technologies=/s/^/#/' /etc/java-*-openjdk/accessibility.properties

Đây là giải pháp tốt nhất. Hoạt động cho android-sdk / tools / draw9patch (Công cụ SDK Android)
gorlok

Điều này cũng hoạt động trên Ubntu 15.10 của tôi để sửa lỗi freemindkhông bắt đầu bằng cách khác
rubo77

17
nó chỉ xảy ra với tôi hôm nay, hai năm rưỡi sau câu trả lời này. thay vì java-8 bây giờ nó là java-11, ngoài ra, đã giúp tôi, cảm ơn bạn
marosg

1
Cảm ơn, điều này làm việc cho tôi vì đã bắt đầu một phần mềm khác gọi là OpenRefine. java-11-openjdk ở đây là tốt.
Nikhil VJ

Làm việc như một cơ duyên, chỉ cần thực hiện một số điều chỉnh. Đây không phải là java-8 ở đây.
Alexandre Campos

21

Đọc các chủ đề sau. Tôi đã xoay sở để thoát khỏi vấn đề này bằng cách gỡ cài đặt OpenJDK 8 không đầu và cài đặt OpenJDK 8.

https://bugs.debian.org/cgi-bin/orpreport.cgi?orms=798794

Các lệnh tôi đã chạy:

sudo dpkg -l | grep openjdk  

Điều này là để xác minh rằng bạn thực sự đang chạy phiên bản không đầu của JAVA, vì vậy không có thư viện biểu đồ nào khả dụng.

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

Điều này là để loại bỏ phiên bản không đầu.

sudo apt-get install openjdk-8-jre

Đây là để cài đặt phiên bản không đầu của java.


9

Đối với những người không có quyền truy cập root trên máy của họ để thay đổi tệp cấu hình hoặc không muốn cài đặt JRE đầy đủ: nối -Djavax.accessibility.assistive_technologies=" "vào lệnh của bạn, ví dụ:

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

Xin lưu ý rằng điều " "này rất quan trọng, chỉ cần sử dụng "không có gì" làm tham số sẽ khiến JRE vẫn tải bất cứ thứ gì được đặt /etc/java-8-openjdk/accessibility.properties.


3
Việc nộp đơn không giải quyết được cho tôi. Chuẩn bị thay đổi tin nhắn để Assistive Technology not found: không theo sau org.GNOME.Accessibility.AtkWrapper.
Fabio Iotti

Điều này làm việc với tôi với Ubuntu 18.04 khi java thiết lập lại phiên bản 8 từ 10 (vì openjfx chưa có sẵn tiền biên dịch). Các phương pháp khác được liệt kê trong câu hỏi này không làm việc cho tôi.
Chris Tốt

4

Cùng một vấn đề. Trong trường hợp của tôi, tôi không thể chạy FastQC.
Đây là những gì tôi đã làm:

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

Tôi đã xác minh java đã biến mất

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

Vấn đề được giải quyết.


2

Tôi đã phải gỡ cài đặt openjdk-11-jre, vd:

sudo apt remove openjdk-11-jre

hoặc là

sudo apt remove openjdk-11*

để xóa tất cả các gói openjdk-11 trên hệ thống của bạn.

Điều này buộc chương trình của bạn chạy trên openjdk-8-jre thay vì openjdk-11-jre, vì tôi đã cài đặt cả hai. Rõ ràng Công nghệ hỗ trợ Java không chạy trên gói openjdk-11-jre. Tôi tin rằng cũng có một cách để chỉ định phiên bản Java nào sẽ chạy, nhưng tôi không biết nó ra khỏi đầu và tôi chắc chắn có một bài viết khác về chủ đề đó.


1
Bạn thậm chí không cần phải gỡ cài đặt openjdk-11-jdk hoặc openjdk-11-jre: askubfox.com/questions/315646/ trên
karel

0

Lấy cảm hứng từ câu trả lời của Marco, nhưng đối với tôi nó chỉ hoạt động theo thứ tự này (trả trước):

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

Nó đã giải quyết vấn đề và chương trình đã khởi chạy thành công (trong trường hợp của tôi là argouml.jar fakesmtp.jar).

Sử dụng Java 8 trên Ubuntu 2019.04

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.