import java.io.InputStream; import java.io.File; import java.util.Enumeration; import java.util.zip.ZipFile; import java.util.zip.ZipEntry; public class Zip { private static String findJar(File directory) { for (File file: directory.listFiles()) { if (file.isFile()) { if (file.getName().endsWith(".jar")) { System.out.println ("found " + file.getAbsolutePath() + " length " + file.length()); return file.getAbsolutePath(); } } else if (file.isDirectory()) { String result = findJar(file); if (result != null) { return result; } } } return null; } public static void main(String[] args) throws Exception { ZipFile file = new ZipFile (findJar(new File(System.getProperty("user.dir")))); try { byte[] buffer = new byte[4096]; for (Enumeration e = file.entries(); e.hasMoreElements();) { ZipEntry entry = e.nextElement(); InputStream in = file.getInputStream(entry); try { int size = 0; int c; while ((c = in.read(buffer)) != -1) size += c; System.out.println (entry.getName() + " " + entry.getCompressedSize() + " " + size); } finally { in.close(); } } } finally { file.close(); } } }