< prev index next >

hotspot/src/share/vm/classfile/classLoader.cpp

Print this page
rev 6905 : 8064375: Change certain errors to warnings in CDS output.
Summary: Change CDS non-fatal preloading errors to warnings.
Reviewed-by: minqi, mseledtsov, coleenp


1120     ClassFileParser parser(stream);
1121     ClassLoaderData* loader_data = ClassLoaderData::the_null_class_loader_data();
1122     Handle protection_domain;
1123     TempNewSymbol parsed_name = NULL;
1124     instanceKlassHandle result = parser.parseClassFile(h_name,
1125                                                        loader_data,
1126                                                        protection_domain,
1127                                                        parsed_name,
1128                                                        context.should_verify(classpath_index),
1129                                                        THREAD);
1130     if (HAS_PENDING_EXCEPTION) {
1131       ResourceMark rm;
1132       if (DumpSharedSpaces) {
1133         tty->print_cr("Preload Error: Failed to load %s", class_name);
1134       }
1135       return h;
1136     }
1137     h = context.record_result(classpath_index, e, result, THREAD);
1138   } else {
1139     if (DumpSharedSpaces) {
1140       tty->print_cr("Preload Error: Cannot find %s", class_name);
1141     }
1142   }
1143 
1144   return h;
1145 }
1146 
1147 
1148 void ClassLoader::create_package_info_table(HashtableBucket<mtClass> *t, int length,
1149                                             int number_of_entries) {
1150   assert(_package_hash_table == NULL, "One package info table allowed.");
1151   assert(length == package_hash_table_size * sizeof(HashtableBucket<mtClass>),
1152          "bad shared package info size.");
1153   _package_hash_table = new PackageHashtable(package_hash_table_size, t,
1154                                              number_of_entries);
1155 }
1156 
1157 
1158 void ClassLoader::create_package_info_table() {
1159     assert(_package_hash_table == NULL, "shouldn't have one yet");
1160     _package_hash_table = new PackageHashtable(package_hash_table_size);




1120     ClassFileParser parser(stream);
1121     ClassLoaderData* loader_data = ClassLoaderData::the_null_class_loader_data();
1122     Handle protection_domain;
1123     TempNewSymbol parsed_name = NULL;
1124     instanceKlassHandle result = parser.parseClassFile(h_name,
1125                                                        loader_data,
1126                                                        protection_domain,
1127                                                        parsed_name,
1128                                                        context.should_verify(classpath_index),
1129                                                        THREAD);
1130     if (HAS_PENDING_EXCEPTION) {
1131       ResourceMark rm;
1132       if (DumpSharedSpaces) {
1133         tty->print_cr("Preload Error: Failed to load %s", class_name);
1134       }
1135       return h;
1136     }
1137     h = context.record_result(classpath_index, e, result, THREAD);
1138   } else {
1139     if (DumpSharedSpaces) {
1140       tty->print_cr("Preload Warning: Cannot find %s", class_name);
1141     }
1142   }
1143 
1144   return h;
1145 }
1146 
1147 
1148 void ClassLoader::create_package_info_table(HashtableBucket<mtClass> *t, int length,
1149                                             int number_of_entries) {
1150   assert(_package_hash_table == NULL, "One package info table allowed.");
1151   assert(length == package_hash_table_size * sizeof(HashtableBucket<mtClass>),
1152          "bad shared package info size.");
1153   _package_hash_table = new PackageHashtable(package_hash_table_size, t,
1154                                              number_of_entries);
1155 }
1156 
1157 
1158 void ClassLoader::create_package_info_table() {
1159     assert(_package_hash_table == NULL, "shouldn't have one yet");
1160     _package_hash_table = new PackageHashtable(package_hash_table_size);


< prev index next >