code: @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
          }
      }
docs: This method will define the package using the byteResourceInformation for a class to get the URL for this package to try to load a manifest. If a manifest can't be loaded
  from the URL it will create the package with no package versioning or sealing information.
  
  @param byteResourceInformation The information about the class file
  @param packageName The name of the package to create