src/hotspot/share/classfile/classLoaderExt.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File open Cdiff src/hotspot/share/classfile/classLoaderExt.cpp

src/hotspot/share/classfile/classLoaderExt.cpp

Print this page

        

*** 69,100 **** shared_paths_misc_info()->add_app_classpath(app_class_path); ClassLoader::setup_app_search_path(app_class_path); } } ! void ClassLoaderExt::process_module_table(ModuleEntryTable* met) { ResourceMark rm; for (int i = 0; i < met->table_size(); i++) { for (ModuleEntry* m = met->bucket(i); m != NULL;) { char* path = m->location()->as_C_string(); if (strncmp(path, "file:", 5) == 0 && ClassLoader::string_ends_with(path, ".jar")) { m->print(); path = ClassLoader::skip_uri_protocol(path); ! ClassLoader::setup_module_search_path(path); } m = m->next(); } } } ! void ClassLoaderExt::setup_module_search_path() { assert(DumpSharedSpaces, "this function is only used with -Xshare:dump and -XX:+UseAppCDS"); _app_module_paths_start_index = ClassLoader::num_boot_classpath_entries() + ClassLoader::num_app_classpath_entries(); ! Thread* thread = Thread::current(); ! Handle system_class_loader (thread, SystemDictionary::java_system_loader()); ModuleEntryTable* met = Modules::get_module_entry_table(system_class_loader); ! process_module_table(met); } char* ClassLoaderExt::read_manifest(ClassPathEntry* entry, jint *manifest_size, bool clean_text, TRAPS) { const char* name = "META-INF/MANIFEST.MF"; char* manifest; --- 69,99 ---- shared_paths_misc_info()->add_app_classpath(app_class_path); ClassLoader::setup_app_search_path(app_class_path); } } ! void ClassLoaderExt::process_module_table(ModuleEntryTable* met, TRAPS) { ResourceMark rm; for (int i = 0; i < met->table_size(); i++) { for (ModuleEntry* m = met->bucket(i); m != NULL;) { char* path = m->location()->as_C_string(); if (strncmp(path, "file:", 5) == 0 && ClassLoader::string_ends_with(path, ".jar")) { m->print(); path = ClassLoader::skip_uri_protocol(path); ! ClassLoader::setup_module_search_path(path, THREAD); } m = m->next(); } } } ! void ClassLoaderExt::setup_module_search_path(TRAPS) { assert(DumpSharedSpaces, "this function is only used with -Xshare:dump and -XX:+UseAppCDS"); _app_module_paths_start_index = ClassLoader::num_boot_classpath_entries() + ClassLoader::num_app_classpath_entries(); ! Handle system_class_loader (THREAD, SystemDictionary::java_system_loader()); ModuleEntryTable* met = Modules::get_module_entry_table(system_class_loader); ! process_module_table(met, THREAD); } char* ClassLoaderExt::read_manifest(ClassPathEntry* entry, jint *manifest_size, bool clean_text, TRAPS) { const char* name = "META-INF/MANIFEST.MF"; char* manifest;
*** 220,232 **** shared_paths_misc_info()->record_app_offset(); ClassLoaderExt::setup_app_search_path(); } } ! void ClassLoaderExt::setup_module_paths() { if (UseAppCDS) { ! ClassLoaderExt::setup_module_search_path(); } } Thread* ClassLoaderExt::Context::_dump_thread = NULL; --- 219,231 ---- shared_paths_misc_info()->record_app_offset(); ClassLoaderExt::setup_app_search_path(); } } ! void ClassLoaderExt::setup_module_paths(TRAPS) { if (UseAppCDS) { ! ClassLoaderExt::setup_module_search_path(THREAD); } } Thread* ClassLoaderExt::Context::_dump_thread = NULL;
src/hotspot/share/classfile/classLoaderExt.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File