【问题标题】:Upgrading to JRE7 throws java.lang.NoClassDefFoundError升级到 JRE7 抛出 java.lang.NoClassDefFoundError
【发布时间】:2013-03-18 15:27:23
【问题描述】:

我的产品运行 JRE 6.31 没有任何问题。现在我正在尝试将其设置为与 JRE 7 一起使用,但是当我在 Linux 机器上运行它时,我得到:

java.lang.NoClassDefFoundError: Could not initialize class sun.awt.X11FontManager

致电java.awt.Font.canDisplayUpTo() 时。这个案子是不是有些眼熟?

【问题讨论】:

  • 这来自于 Java 环境的不完整安装。 DejaVu 字体是否正确安装?你是如何安装 JRE7 的?
  • 发布完整的堆栈跟踪?
  • Alban,其实我没有安装 JRE7。我正在通过提取的包使用它。

标签: java noclassdeffounderror


【解决方案1】:

您的 Linux 机器似乎没有安装 X11,或者没有可用的 X 显示器。

如果您的应用程序是服务器应用程序,请尝试使用命令行开关强制进行无头渲染:

-Djava.awt.headless=true 

编辑:

另外,用户报告说,在 Linux 系统上,Oracle JDK 1.7 和 OpenJDK 1.7 都需要安装 dejavu 字体。

【讨论】:

    猜你喜欢
    • 2021-11-27
    • 1970-01-01
    • 2020-04-23
    • 2011-11-15
    • 1970-01-01
    • 2021-06-02
    • 2014-07-02
    • 2016-04-30
    • 1970-01-01
    相关资源
    最近更新 更多