偶然遇到:
Could not initialize class sun.awt.Win32GraphicsEnvironment
一直認爲是CLASSPATH的什麼問題,於是乎寫個測試類:
public class Test {
public static void main(String[] args) {
try {
System.out.println(Class.forName
("sun.awt.Win32GraphicsEnvironment").newInstance());
} catch (Throwable e) {
System.out.println("error=" + e.getClass().getName());
e.printStackTrace();
}
}
}
javac Test.java
javac Test
結果報:
java.lang.NoSuchMethodError: calculateSecurityWarningPosition
到註冊表查看:
HKEY_LOCAL_MACHINE/SOFTWARE/JavaSoft
結果:JDK是1.6.0_11,JRE是1.6.0_20。
更新JDK,保證JAVA_HOME中和註冊表中的版本對應,編譯結果OK