docs: @FFDCIgnore(value = { IllegalArgumentException.class })
      private void definePackage(ByteResourceInformation byteResourceInformation, String packageName) {
          // If the package is in a JAR then we can load the JAR manifest to see what package definitions it's got
          Manifest manifest = byteResourceInformation.getManifest();
  
          try {
              // The URLClassLoader.definePackage() will NPE with a null manifest so use the other definePackage if we don't have a manifest
              if (manifest == null) {
                  definePackage(packageName, null, null, null, null, null, null, null);
              } else {
                  definePackage(packageName, manifest, byteResourceInformation.getResourceUrl());
              }
          } catch (IllegalArgumentException e) {
              // Ignore, this happens if the package is already defined but it is hard to guard against this in a thread safe way. See:
              // http://bugs.sun.com/view_bug.do?bug_id=4841786
          }
      }