libawt_xawt.so: libXext.so.6: không thể mở tệp đối tượng dùng chung: Không có tệp hoặc thư mục như vậy


12
Ngoại lệ trong luồng "chính" java.lang.UnsatisfiedLinkError: /usr/lib/java/jdk1.8.0_60/jre/lib/i386/libawt_xawt.so: libXext.so.6: không thể mở tệp đối tượng được chia sẻ: danh mục
    tại java.lang.ClassLoader $ NativeL Library.load (Phương thức gốc)
    tại java.lang.ClassLoader.loadL Library0 (ClassLoader.java:1938)
    tại java.lang.ClassLoader.loadL Library (ClassLoader.java:1821)
    tại java.lang.R.78.load0 (Runtime.java:809)
    tại java.lang.System.load (System.java:1086)
    tại java.lang.ClassLoader $ NativeL Library.load (Phương thức gốc)
    tại java.lang.ClassLoader.loadL Library0 (ClassLoader.java:1938)
    tại java.lang.ClassLoader.loadL Library (ClassLoader.java:1842)
    tại java.lang.R.78.loadL Library0 (Runtime.java:870)
    tại java.lang.System.loadL Library (System.java:1122)
    tại java.awt.Toolkit $ 3.run (Toolkit.java:1636)
    tại java.awt.Toolkit $ 3.run (Toolkit.java:1634)
    tại java.security.AccessControll.doPriv đặc biệt (Phương thức gốc)
    tại java.awt.Toolkit.loadL Library (Toolkit.java:1633)
    tại java.awt.Toolkit. (Toolkit.java:1668)
    tại java.awt.Component. (Element.java giáp93)
    tại EventTest. (EventTest.java:28)
    tại EventTest.main (EventTest.java:49)

Câu trả lời:


11

Kiểm tra gói nào chứa tệp và cài đặt nó:

$ apt-file search libXext.so.6 
libxext6: /usr/lib/x86_64-linux-gnu/libXext.so.6 
libxext6: /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0
libxext6-dbg: /usr/lib/debug/usr/lib/x86_64-linux-gnu/libXext.so.6.4.0 

Vì vậy, cài đặt libxext6:

sudo apt install libxext6

thưa ngài phương pháp này không hiệu quả
Ankit_Chaudhary

Phần nào? Các tập tin apt hoặc apt cài đặt?
JdeHaan

thưa ngài, ý tôi là lỗi đã đề cập ở trên không được khắc phục bằng phương pháp này
Ankit_Chaudhary

Vì vậy, các tập tin thực sự có? sudo find / -name 'libXext *'
JdeHaan

1
Rất có thể là xung đột phiên bản trong 32 bit so với 64 bit. Vui lòng kiểm tra câu hỏi này trên stackoverflow: stackoverflow.com/questions/24543014/ cấp
JdeHaan

9
apt-get install libxrender1:i386 libxtst6:i386 libxi6:i386

đã giúp tôi giải quyết điều này.

Tôi đã cài đặt trong một hệ thống 64 bit cũng i386.


3
Điều này làm việc cho tôi nơi mà các câu trả lời khác sẽ không. Cảm ơn.
một lập trình viên

Để chắc chắn đây là câu trả lời chính xác nếu bạn đang chạy phiên bản JRE của i386 hoặc bất kỳ phần mềm nào khác phụ thuộc vào bộ lib này. Bạn luôn phải khớp kiến ​​trúc giữa thời gian chạy và libs được chia sẻ.
stamster

8

Tôi đã phải cài đặt cái này (trên Ubuntu 16.04 64 bit) để làm cho oracle-jdk8 hoạt động:

sudo apt-get install libxrender1 libxtst6 libxi6

Tôi không biết gì, nhưng điều này đã khắc phục vấn đề của tôi sau khi thử hàng trăm apt khác cài đặt bất kỳ lệnh nào từ các câu trả lời khác!
đội17
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.