偶然遇到:
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