code: public File extractClassesJarFromAarFile(File aarFile) {
      try (ZipFile zfile = new ZipFile(aarFile)) {
        File tempDir = FileUtil.createTempDir(aarFile.getName());
        ZipEntry entry = zfile.getEntry("classes.jar");
        if (entry == null) {
          ErrorUtil.warning(aarFile.getPath() + " does not have a classes.jar entry");
          return aarFile;
        }
        File tmpFile = extractZipEntry(tempDir, zfile, entry);
        tmpFile.deleteOnExit();
        return tmpFile;
      } catch (IOException e) {
        ErrorUtil.warning("unable to access " + aarFile.getPath() + ": " + e);
        return aarFile;
      }
    }
docs: Android libraries are packaged in AAR files, which is a zip file with a ".aar"
  suffix that contains a classes.jar with the classfiles, as well as any Android
  resources associated with this library. This method extracts the classes.jar
  entry from the AAR file, so it can be used as a classpath entry.
  <p>
  If there is an error extracting the classes.jar entry, a warning is logged
  and the original path is returned.