java.awt.Desktop.getDesktop()不支持的平台

时间:2008-09-19 14:34:49

标签: java cross-platform desktop

从Java 6开始,有一个类java.awt.Desktop。有一些不错的方法,但所有平台都不支持该类。方法java.awt.Desktop.getDesktop()抛出

  

java.lang.UnsupportedOperationException:不支持Desktop API   在当前的平台上

在某些平台上。或者方法java.awt.Desktop.isDesktopSupported()返回false。

我知道它适用于Windows XP,Windows 2003和Windows Vista。问题是不支持哪个平台?

6 个答案:

答案 0 :(得分:8)

引用:

  

桌面API的开发是为了支持   仅限Windows和Gnome

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

然而,article表示甚至Gnome支持在Fedora上也存在缺陷。

答案 1 :(得分:3)

也适用于OS X.

答案 2 :(得分:3)

无论是在gnome还是fvwm,都无法在当前的Debian(squeeze)中运行。 我没有尝试过kde。

此错误会阻止启动最新版本的limewire。堆栈输出为:

致命错误!

java.lang.ExceptionInInitializerError     在com.limegroup.gnutella.gui.Initializer $ 6.run(未知来源)

.......

引起:java.lang.UnsupportedOperationException:当前平台不支持系统托盘。     在java.awt.SystemTray.getSystemTray(SystemTray.java:151)

答案 3 :(得分:2)

它不支持Ubuntu 12.04并且它给出了错误。

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

答案 4 :(得分:2)

在ubuntu上解决它,运行下一个命令:

apt-get install libgnome2-0

答案 5 :(得分:0)

在arch linux上,我必须安装AUR libgnome软件包