question: private void parseJars ( String [ ] files ) throws IOException { if ( files == null ) { return ; } String currentJar = null ; for ( int i = 0 ; i < files . length ; i ++ ) { currentJar = files [ i ] ; ZipFile zrf = new ZipFile ( currentJar . replace ( '/' , File . separatorChar ) ) ; Enumeration < ? extends ZipEntry > entries = zrf . entries ( ) ; while ( entries . hasMoreElements ( ) ) { ZipEntry entry = entries . nextElement ( ) ; String fileName = entry . getName ( ) ; if ( fileName . equals ( "META-INF/" ) || fileName . equals ( INDEX_NAME ) || fileName . equals ( JarFile . MANIFEST_NAME ) ) continue ; if ( ! metaInfFilenames || ! fileName . startsWith ( "META-INF/" ) ) { add ( fileName , currentJar ) ; } else if ( ! entry . isDirectory ( ) ) { addMapping ( fileName , currentJar ) ; } } zrf . close ( ) ; } }
target:  Go through all the jar files and construct the index table.