java cross-platform desktop

Plataformas no compatibles para java.awt.Desktop.getDesktop()



cross-platform (6)

Citar:

La API de escritorio fue desarrollada para ser compatible solo con Windows y Gnome

de http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6486393

Sin embargo, este artículo dice que incluso el soporte de Gnome es defectuoso en Fedora.

Desde Java 6 hay una clase java.awt.Desktop . Hay algunos buenos métodos, pero la clase no es compatible con todas las plataformas. Los métodos java.awt.Desktop.getDesktop() arrojan un

java.lang.UnsupportedOperationException: Desktop API no es compatible con la plataforma actual

en algunas plataformas. O el método java.awt.Desktop.isDesktopSupported() devuelve falso.

Sé que funciona en Windows XP, Windows 2003 y también en Windows Vista. La pregunta es ¿qué plataforma no es compatible?


Funciona en OS X, también.


No funciona en el actual Debian (squeeze) ya sea en gnome o fvwm. No intenté con Kde.

Este error impide que se inicie la última versión de limewire. La salida de la pila es:

¡ERROR FATAL!

java.lang.ExceptionInInitializerError en com.limegroup.gnutella.gui.Initializer $ 6.run (fuente desconocida)

.......

Causado por: java.lang.UnsupportedOperationException: la bandeja del sistema no es compatible con la plataforma actual. en java.awt.SystemTray.getSystemTray (SystemTray.java:151)


Bueno, no es compatible con el Ubuntu 12.04 y da un error como este.

java.lang.UnsupportedOperationException: The system tray is not supported on the current platform.


para resolverlo en ubuntu, ejecute el siguiente comando:

apt-get install libgnome2-0


En arch Linux, tuve que instalar el paquete libgnome AUR