svoid tarInJar_withMD5(File jarIn, File jarOut) ctex { print("tarInJar_withMD5 " + f2s(jarIn) + " => " + f2s(jarOut)); File tar = createTempFile("", ".tar"); print(" temp: " + f2s(tar)); temp tempDeleteFile(tar); zip2tar(jarIn, tar); temp ZipOutputStream zipOut = zipOutputStream(jarOut); file2zip(zipOut, tar, "bulk-" + md5(tar) + ".tar"); } svoid tarInJar_withMD5(File jarIn) { if (!fileExists(jarIn)) ret; File jarOut = fileInSameDirectory(jarIn, dropSuffixIC(".jar", jarIn.getName()) + ".repacked.jar"); renameFileToUniqueName(jarOut); // backup old version tarInJar_withMD5(jarIn, jarOut); } svoid tarInJar_withMD5(S jarIn) { tarInJar_withMD5(newFile(jarIn)); }