2011-08-25 4 views
2

나는이 아주 기본적인 스윙 프로그램을 실행하려고 : http://download.oracle.com/javase/tutorial/uiswing/examples/start/HelloWorldSwingProject/src/start/HelloWorldSwing.java 및 오류 가지고 : 나는 오류가자바 스윙은 널 포인터 예외

Exception in thread "main" java.lang.ExceptionInInitializerError 
    at java.lang.Class.forName0(Native Method) 
    at java.lang.Class.forName(Class.java:186) 
    at java.awt.Toolkit$2.run(Toolkit.java:849) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.awt.Toolkit.getDefaultToolkit(Toolkit.java:841) 
    at java.awt.Toolkit.getEventQueue(Toolkit.java:1698) 
    at java.awt.EventQueue.invokeLater(EventQueue.java:1002) 
    at javax.swing.SwingUtilities.invokeLater(SwingUtilities.java:1292) 
    at ac.biu.nlp.nlp.engineml.rteflow.macro.gui.CustomProofEngine.main(CustomProofEngine.java:261) 
Caused by: java.lang.NullPointerException 
    at sun.awt.FontConfiguration.getVersion(FontConfiguration.java:1191) 
    at sun.awt.FontConfiguration.readFontConfigFile(FontConfiguration.java:164) 
    at sun.awt.FontConfiguration.<init>(FontConfiguration.java:89) 
    at sun.awt.motif.MFontConfiguration.<init>(MFontConfiguration.java:50) 
    at sun.awt.X11GraphicsEnvironment.createFontConfiguration(X11GraphicsEnvironment.java:942) 
    at sun.java2d.SunGraphicsEnvironment$2.run(SunGraphicsEnvironment.java:247) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at sun.java2d.SunGraphicsEnvironment.<init>(SunGraphicsEnvironment.java:163) 
    at sun.awt.X11GraphicsEnvironment.<init>(X11GraphicsEnvironment.java:253) 
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) 
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) 
    at java.lang.reflect.Constructor.newInstance(Constructor.java:532) 
    at java.lang.Class.newInstance0(Class.java:372) 
    at java.lang.Class.newInstance(Class.java:325) 
    at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:82) 
    at sun.awt.X11.XToolkit.<clinit>(XToolkit.java:112) 
    ... 9 more 

을 모두 내가 명령에서 실행할 때 이클립스에서 실행할 때 선.

저는 Java 6의 표준 설치를 Ubuntu 10.04에서 사용합니다.

이 문제를 해결하는 방법에 대해 알고 계십니까?

+0

Windows의 Eclipse Helios에서 올바르게 작동합니다. –

답변

3

스택 추적을 읽으면 NullPointerException으로 인해 FontConfiguration이 실행되지 않는 것으로 보입니다.

저는 이것이 자바 설치에 문제가 있다고 생각합니다. Java 제거 및 다시 설치를 시도하십시오. 확실히 코드 자체에는 아무런 문제가 없습니다. 비록 스택 추적의 루트가 261 행에서 시작된 예외를 주 메쏘드에서 보여 주긴하지만, 링크 된 예제에서 코드를 실행하고 있다면 몇 가지가 있기 때문에 아주 이상한 일이 일어나고 있습니다. 12 줄의 코드!

+0

+1 Ubuntu 10.04.3 LTS에서 OK를 테스트했습니다. – trashgod

+0

"Java 제거 및 다시 설치를 시도하십시오" 이 작업을 시도하지만 어디서부터 시작해야할지 모르겠습니다 - 내 시냅스 패키지 관리자가 java와 관련된 많은 패키지를 보여줍니다 - default-jdk를 제거해야합니까? default-jre? 자바 공통점? 또는 다른 패키지? –

+1

은 jre로 시작하고 jdk로 시작하십시오. – Codemwnci

관련 문제