gpt4 book ai didi

java - 删除 META-INF 文件夹

转载 作者:行者123 更新时间:2023-12-01 23:13:59 24 4
gpt4 key购买 nike

我需要删除 jarFile.jar > /META-INF 文件夹。

首先,我将原始的 jarFile.jar 提取到 temp/文件夹

然后我删除META-INF/

再次压缩,没有错误,但文件似乎已损坏。

有人可以帮助我吗?

编辑:

public static void removeJarFiles(File jarFile, String[] files) throws IOException {
File tempFolder = new File(jarFile.getParentFile(), "temp/");
tempFolder.mkdirs();
unZip(jarFile.getAbsolutePath(), tempFolder.getAbsolutePath()); // Decompress JAR
// Delete files
for (String file : files) {
File f = new File(tempFolder, file);
if (f.isDirectory()) {
Util.deleteDir(f);
} else {
if (f.exists()) {
f.delete();
}
}
}
jarFile.delete(); // Delete OLD Jar
// Re-Create JAR
zipFolder(tempFolder.getAbsolutePath(), jarFile.getAbsolutePath());
}

最佳答案

如果从 jar 中删除 META-INF,则不会有 MANIFEST.MF,因此 java -jar 无法找到主类。

您可以在没有 META-INF 的情况下创建 jar,但是当您要执行 jar 时,需要 META-INF/MANIFEST.MF。

参见http://docs.oracle.com/javase/7/docs/technotes/guides/jar/jar.html

关于java - 删除 META-INF 文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21501621/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com