2013-03-18 102 views
2

我的产品运行于JRE 6.31没有任何问题。现在我想将它与JRE 7的工作,但是当我在Linux机器上运行它,我得到:升级到JRE7抛出java.lang.NoClassDefFoundError

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

当调用到java.awt.Font.canDisplayUpTo()。这个案子对某人来说看起来很熟悉吗

+1

这是来自Java环境的不完整安装。 * DejaVu *字体是否正确安装?你是如何安装JRE7的? – 2013-03-18 15:38:12

+0

发布完整的堆栈跟踪? – 2013-03-18 16:13:49

+0

Alban,其实我没有安装JRE7。我通过提取的软件包使用它。 – odavid 2013-03-19 12:26:32

回答

0

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

如果你是一个服务器应用程序,尝试通过使用命令行开关来强制无头渲染:

-Djava.awt.headless=true 

编辑:

此外,用户还报告说,在Linux系统中,无论是甲骨文JDK 1.7和OpenJDK 1.7需要安装dejavu字体。