2016-05-23 9 views
0

http://openjdk.java.net/groups/build/の指示に従ってウィンドウ用に32ビットのopenjdk(jdk8u92)をビルドしましたが、ビルドプロセスは問題なく成功しますが、新しくビルドしたスイングを使用してプログラムを実行するとOpenJDKの、次のエラーが発生したシンプルなGUIプログラム、である:私はOpenJDKの中sun.font.SunFontManagerを見つけることができますが、クラスローダがクラスをロードするのに失敗したようだNoClassDefFoundError Windowsプラットフォームでopenjdkでawtコードを実行している場合

Exception in thread "main" java.lang.NoClassDefFoundError: sun.font.SunFontManager 
at java.lang.Class.forName0(Native Method) 
at java.lang.Class.forName(Class.java:348) 
at sun.font.FontManagerFactory$1.run(FontManagerFactory.java:82) 
at java.security.AccessController.doPrivileged(Native Method) 
at sun.font.FontManagerFactory.getInstance(FontManagerFactory.java:74) 
at java.awt.Font.getFont2D(Font.java:491) 
at java.awt.Font.getFamily(Font.java:1220) 
at java.awt.Font.getFamily_NoClientCode(Font.java:1194) 
at java.awt.Font.getFamily(Font.java:1186) 
at sun.swing.SwingUtilities2.displayPropertiesToCSS(SwingUtilities2.java:1478) 
at javax.swing.plaf.basic.BasicHTML$BasicDocument.setFontAndColor(BasicHTML.java:366) 
at javax.swing.plaf.basic.BasicHTML$BasicDocument.<init>(BasicHTML.java:355) 
at javax.swing.plaf.basic.BasicHTML$BasicEditorKit.createDefaultDocument(BasicHTML.java:311) 
at javax.swing.plaf.basic.BasicHTML.createHTMLView(BasicHTML.java:54) 
at javax.swing.plaf.basic.BasicHTML.updateRenderer(BasicHTML.java:207) 
at javax.swing.plaf.basic.BasicLabelUI.propertyChange(BasicLabelUI.java:417) 
at java.beans.PropertyChangeSupport.fire(PropertyChangeSupport.java:335) 
at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:327) 
at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:263) 
at java.awt.Component.firePropertyChange(Component.java:8428) 
at javax.swing.JLabel.setText(JLabel.java:330) 
...... 

...

いずれことができますこれについて助けてください?

答えて

0

最後に、私は自分でこの問題の根本的な原因を発見した:

この問題は、私がgnuwin32によってコンパイルされfreetypeの2.3.5_1 LIBでのOpenJDKを連動によって引き起こされますが、私の地元のビルド環境が基づいていますcygwin。だから、 awtのJavaコードを実行しているとき、freetype 2.3.5_1はfreejdkがこのエラーを食べてsun.font.SunFontManagerをスローしたのに対し、依存関係は見つからない(zip2.dllでなければならない、gunwin32はfreetype 2.3.5_1をビルドすると追加される)見つかりません。

解決策は、Visual Studioを使用して自分の環境でfreetypeを構築することです。

関連する問題