有没有一种快速的方法可以从Jar /war中删除文件,而无需提取jar并重新创建它?

2022-08-31 08:43:27

所以我需要从jar / war文件中删除一个文件。我希望有类似“jar -d myjar.jar file_I_donot_need.txt”这样的东西。

但是现在,我能从我的Linux命令行(不使用WinRAR / Winzip或Linux等效物)中看到的唯一方法是

  • 执行“jar -xvf”并提取
    完整的Jar文件
  • 删除我不需要的文件
  • 使用“jar -cvf”重新粘贴jar文件

请告诉我有更短的方法?


答案 1
zip -d file.jar unwanted_file.txt

毕竟,jar只是一个zip文件。绝对比解压/重新压缩快得多。


答案 2

如果您想删除文件以取消签名jar的签名,则可以将.RSA 文件为零大小。这可以通过 仅用 来完成。请参阅 https://stackoverflow.com/a/24678645/653539 。(为我工作,尽管我承认这是黑客。jar u


推荐