--- old/src/hotspot/share/memory/filemap.cpp 2018-04-06 15:40:34.049286846 -0700 +++ new/src/hotspot/share/memory/filemap.cpp 2018-04-06 15:40:33.795262891 -0700 @@ -237,9 +237,13 @@ bool ok = true; log_info(class, path)("checking shared classpath entry: %s", name); if (os::stat(name, &st) != 0 && is_class_path) { + // If the archived module path entry does not exist at runtime, it is not fatal + // (no need to invalid the shared archive) because the shared runtime visibility check + // filters out any archived module classes that do not have a matching runtime + // module path location. FileMapInfo::fail_continue("Required classpath entry does not exist: %s", name); ok = false; - } else if (is_dir() && is_class_path) { + } else if (is_dir()) { if (!os::dir_is_empty(name)) { FileMapInfo::fail_continue("directory is not empty: %s", name); ok = false;