java—如何提取.jar文件并创建一个100%相同的新文件

nsc4cvqm  于 2021-08-20  发布在  Java
关注(0)|答案(1)|浏览(324)

当我读到关于修改文件时,我正在玩minecraft版本文件 version.jar 文件来修改您的游戏。我开始尝试这些东西,几乎立刻就被卡住了。
我使用终端应用在mac电脑上工作。
我的问题如下:
我开始喝咖啡了 version.jar 归档 TEST 文件夹。
我先跑 cd path_to_folder/TEST .
然后我跑: jar -xf version.jar witch似乎提取了填充文件夹的文件 .class 文件、一些其他文件和包括文件夹在内的一些文件夹 META-INF/MANIFEST.MF .
在这一点上,我尝试重新创建 version.jar 文件
首先,我删除了原件 version.jar 仍存在于中的文件 TEST 使用 rm version.jar .
我跑 jar -cmf META-INF/MANIFEST.MF 1.12.2_mod.jar * 女巫创造了一个新的世界 version.jar 文件
现在我尝试运行它,但它不起作用。分析这两个文件的尺寸(之前和之后),我没有得到相同的大小:原始的是 10’180’113 字节和新字节 10’195’006 咬。
我如何解决我的问题?
编辑:
在尝试使用终端之前,我使用了macos的本机解压缩工具,然后将其压缩为zip,最后将扩展名重命名为 .jar . 不起作用。
如果重命名第一个,结果相同 .jar 延伸到 .zip ,解压缩、压缩并最终重命名扩展名。不起作用。
我还尝试使用keka压缩和解压缩zip文件。不起作用。
我可以尝试将文件注入到 version.jar 文件,但我很难理解命令的语法。。。

9o685dep

9o685dep1#

你好,我来自过去!
编辑 .jar mac上的文件不需要提取和重新创建,您可以执行以下操作:
提取全部 version.jar 在新的单独文件夹上。

cd path_to_folder/TEST
mkdir tmp
mv version.jar tmp/version.jar
jar -xf tmp/version.jar

内部 tmp 文件夹,您可以选择要编辑的文件并将其带到外部 path_to_folder/TEST .
删除 tmp 文件夹。
对新选择的文件执行所需的修改。
将您的修改插入其中 version.jar .

cd path_to_folder/TEST
jar -uf version.jar freshly_selected_file

现在您可以运行您的 version.jar 经过你的修改。

相关问题