import java.util.jar.JarInputStream;
import java.util.jar.JarOutputStream;
import java.util.jar.Manifest;
+import java.util.zip.ZipInputStream;
import javax.jcr.Credentials;
import javax.jcr.GuestCredentials;
jarOut = new JarOutputStream(out, manifest);
JarEntry jarEntry = null;
while ((jarEntry = jarIn.getNextJarEntry()) != null) {
- jarOut.putNextEntry(jarEntry);
- IOUtils.copy(jarIn, jarOut);
- jarIn.closeEntry();
- jarOut.closeEntry();
+ if (!jarEntry.getName().equals("META-INF/MANIFEST.MF")) {
+ JarEntry newJarEntry = new JarEntry(jarEntry.getName());
+ jarOut.putNextEntry(newJarEntry);
+ IOUtils.copy(jarIn, jarOut);
+ jarIn.closeEntry();
+ jarOut.closeEntry();
+ }
}
} catch (IOException e) {
throw new SlcException("Could not copy jar with MANIFEST "
+ manifest.getMainAttributes(), e);
} finally {
- IOUtils.closeQuietly(jarIn);
+ if (!(in instanceof ZipInputStream))
+ IOUtils.closeQuietly(jarIn);
IOUtils.closeQuietly(jarOut);
}
}