2012-12-28 19 views
6

我使用的是jfreechart在linux和windows zkoss中的相同代碼。java.lang.Error:可能的致命錯誤:找不到字體

,當我在窗口中運行相同的代碼運行良好,但在Linux中提供了字體相關的誤差下....

任何人都可以請建議我怎樣才能永久解決這個問題?

java.lang.Error:可能的致命錯誤:找不到字體。

sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1087) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1070) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1070) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1070) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1070) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1070) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1070) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1070) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1070) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1070) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1070) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1070) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1070) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1070) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1070) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1070) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1070) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1070) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1070) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1070) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1070) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1070) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1070) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1070) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1070) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1070) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1070) 
sun.font.FontManager.initialiseDeferredFont(FontManager.java:959) 
sun.font.FontManager.findOtherDeferredFont(FontManager.java:898) 
sun.font.FontManager.findDeferredFont(FontManager.java:915) 
sun.font.FontManager.findFont2D(FontManager.java:1903) 
sun.font.FontManager.findFont2D(FontManager.java:1864) 
java.awt.Font.getFont2D(Font.java:477) 
sun.font.FontManager.getFont2D(Native Method) 
sun.font.FontDesignMetrics.initMatrixAndMetrics(FontDesignMetrics.java:356) 
sun.font.FontDesignMetrics.<init>(FontDesignMetrics.java:349) 
sun.font.FontDesignMetrics.getMetrics(FontDesignMetrics.java:301) 
sun.java2d.SunGraphics2D.getFontMetrics(SunGraphics2D.java:787) 
org.jfree.text.TextFragment.calculateDimensions(TextFragment.java:229) 
org.jfree.text.TextLine.calculateDimensions(TextLine.java:190) 
org.jfree.text.TextBlock.calculateDimensions(TextBlock.java:171) 
org.jfree.chart.block.LabelBlock.arrange(LabelBlock.java:316) 
org.jfree.chart.block.BorderArrangement.arrangeNN(BorderArrangement.java:210) 
org.jfree.chart.block.BorderArrangement.arrange(BorderArrangement.java:137) 
org.jfree.chart.block.BlockContainer.arrange(BlockContainer.java:179) 
org.jfree.chart.block.CenterArrangement.arrangeNN(CenterArrangement.java:284) 
org.jfree.chart.block.CenterArrangement.arrange(CenterArrangement.java:98) 
org.jfree.chart.block.BlockContainer.arrange(BlockContainer.java:179) 
org.jfree.chart.block.FlowArrangement.arrangeNN(FlowArrangement.java:365) 
org.jfree.chart.block.FlowArrangement.arrangeRR(FlowArrangement.java:283) 
org.jfree.chart.block.FlowArrangement.arrange(FlowArrangement.java:158) 
org.jfree.chart.block.BlockContainer.arrange(BlockContainer.java:179) 
org.jfree.chart.title.LegendTitle.arrange(LegendTitle.java:501) 
org.jfree.chart.JFreeChart.drawTitle(JFreeChart.java:1330) 
org.jfree.chart.JFreeChart.draw(JFreeChart.java:1220) 
+0

你用什麼JDK? – vels4j

+0

Linux APAUTODNS1-1 2.6.32-202.el6.x86_64#1 SMP Wed Sep 21 15:27:03 EDT 2011 x86_64 x86_64 x86_64 GNU/Linux 2.6.32-202.el6.x86_64 java version「1.6.0_22 「 OpenJDK運行時環境(IcedTea6 1.10.3)(rhel-1.40.1.10.3.el6-x86_64) OpenJDK 64位服務器虛擬機(內部版本20.0-b11,混合模式) 服務器版本:Apache Tomcat/6.0.35 服務器建:2011年11月28日11點20分06秒 服務器數量:6.0.35.0 操作系統名稱:Linux的 OS版本:2.6.32-202.el6.x86_64 硬件架構: JVM版本:1.6.0_22-B22 JVM供應商:Sun Microsystems Inc. – Dhiren

回答

0

嘗試把所需要的在Linux字體目錄下的應用程序相同的Windows字體。

+0

您好Imran,感謝您的回覆。我已經嘗試過,但沒有奏效。你能否以其他方式詳細告訴我解決它? – Dhiren

+0

檢查您的JDK。這可能是一個問題。 –

+0

我也有uninstalld,並再次安裝JDK。但它也沒有工作。 – Dhiren

3

這似乎在打開jdk問題。 Here is a link爲解決這個問題在開放jdk中給出的解決方案。如果使用sun jdk沒有問題,請嘗試安裝sun jdk。

12

在Ubuntu下,你可以通過

sudo apt-get install ttf-dejavu 

安裝字體,或者如果你使用CentOS的,你可以通過

yum install dejavu* 
+1

適用於openjdk的 – appsthatmatter

+0

sudo apt-get install ttf-dejavu爲我工作:) – Ana

+1

CentOS在yum install後安裝dejavu * – imcaptor

0

在我的情況下安裝的字體(的debian喘息)安裝DejaVu字體不解決問題。

我已經安裝fontconfig的包後解決

命令和apt-get安裝的fontconfig

相關問題