code: private void definePackageForFindClass(final String name, final String packageName) {
          try {
              AccessController.doPrivileged(new PrivilegedExceptionAction<Object>() {
                  @Override
                  public Object run() {
                      String path = name.replace('.', '/').concat(".class");
                      for (URL url : getURLs()) {
                          try {
                              if (url.getContent() instanceof JarFile) {
                                  JarFile jarFile = (JarFile) url.getContent();
                                  // Check the jar entry data before needlessly creating the
                                  // manifest
                                  if (jarFile.getJarEntryData(path) != null
                                          && jarFile.getManifest() != null) {
                                      definePackage(packageName, jarFile.getManifest(),
                                              url);
                                      return null;
                                  }
  
                              }
                          } catch (IOException ex) {
                              // Ignore
                          }
                      }
                      return null;
                  }
              }, AccessController.getContext());
          } catch (java.security.PrivilegedActionException ex) {
              // Ignore
          }
      }
docs: Define a package before a {@code findClass} call is made. This is necessary to
  ensure that the appropriate manifest for nested JARs associated with the package.
  
  @param name        the class name being found
  @param packageName the package