docs: @SuppressWarnings("deprecation")
      private static String getPhysicalPath(ArtifactEntry artifactEntry) {
          String physicalPath = artifactEntry.getPhysicalPath();
          if ( physicalPath != null ) {
              return physicalPath;
          }
  
          String entryPath = artifactEntry.getPath();
          String rootPath = artifactEntry.getRoot().getPhysicalPath();
          if ( rootPath != null ) {
              return rootPath + "!" + entryPath;
          }
  
          while ( (artifactEntry = artifactEntry.getRoot().getEntryInEnclosingContainer()) != null ) {
              String nextPhysicalPath = artifactEntry.getPhysicalPath();
              if ( nextPhysicalPath != null ) {
                  return nextPhysicalPath + "!" + entryPath;
              }
              entryPath = artifactEntry.getPath() + "!" + entryPath;
          }
  
          return entryPath;
      }