diff -r 56d1af561395 -r 8f972594effc src/share/vm/classfile/systemDictionary.cpp --- a/src/share/vm/classfile/systemDictionary.cpp Fri May 11 14:54:35 2012 -0700 +++ b/src/share/vm/classfile/systemDictionary.cpp Mon May 14 09:36:00 2012 -0700 @@ -1971,6 +1971,9 @@ // first do Object, String, Class initialize_wk_klasses_through(WK_KLASS_ENUM_NAME(Class_klass), scan, CHECK); + // Calculate offsets for String and Class classes since they are loaded and + // can be used after this point. + java_lang_String::compute_offsets(); java_lang_Class::compute_offsets(); // Fixup mirrors for classes loaded before java.lang.Class.