【问题标题】:Not supported platforms for java.awt.Desktop.getDesktop()java.awt.Desktop.getDesktop() 不支持的平台
【发布时间】:2010-09-11 06:24:25
【问题描述】:

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

java.lang.UnsupportedOperationException:不支持桌面 API 在当前平台上

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

我知道它可以在 Windows XP、Windows 2003 和 Windows Vista 上运行。问题是它在哪个平台上不受支持?

【问题讨论】:

    标签: java cross-platform desktop


    【解决方案1】:

    引用:

    开发了桌面 API 以支持 仅限 Windows 和 Gnome

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

    不过这个article 说即使是 Gnome 支持在 Fedora 上也存在缺陷。

    【讨论】:

    • 您是否知道是否有计划将此功能移植到其他操作系统?
    【解决方案2】:

    也适用于 OS X。

    【讨论】:

    • 不适用于 Mac / OS X。您检查过哪个版本?
    【解决方案3】:

    无论是在 gnome 还是 fvwm 中,都不能在当前的 Debian(挤压)中工作。 我没有尝试 kde。

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

    致命错误!

    java.lang.ExceptionInInitializerError 在 com.limegroup.gnutella.gui.Initializer$6.run(Unknown Source)

    .......

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

    【讨论】:

    • 我在 Ubuntu 11.10 和 Gnome Classic / Gnome3 上也遇到了问题,同时使用了 openjdk-6 和 openjdk-7..
    【解决方案4】:

    Ubuntu 12.04 不支持它,它会出现这样的错误。

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

    【讨论】:

      【解决方案5】:

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

      apt-get install libgnome2-0
      

      【讨论】:

        【解决方案6】:

        在 Arch linux 上,我必须安装 AUR libgnome 包

        【讨论】:

          猜你喜欢
          • 2018-11-18
          • 1970-01-01
          • 2018-08-27
          • 1970-01-01
          • 2017-06-05
          • 2016-10-18
          • 2019-04-17
          • 1970-01-01
          相关资源
          最近更新 更多