如何使用原始设置更新JAR文件?

时间:2013-03-13 09:11:19

标签: java jar

我正在尝试更新Kitchen.jar文件,但在更新后拒绝工作。这是我做的:

$ jar xf Kitchen.jar
$ jar uf Kitchen.jar com/package/Toster.class

一切看起来都不错。 opendiff(以及jar tf)显示无差异,但文件大小为1008字节不同。二进制比较显示大约700个差异。罐子不再起作用了。

正如您所看到的,我没有更改任何文件,我只是进行了提取并使用原始未触摸的类文件更新了jar文件。

我在SO上看过similar question,但由于我的结构没有改变,所以没有回答。

原始清单有:

Created-By: 1.7.0_05-b05 (Oracle Corporation)

虽然我有:

$ javac -version
javac 1.7.0_17

不得不说(但不确定这是否相关)我正在尝试修改的Jar文件是Eclipse IDE插件的一部分。

我有两个想法:

  1. 这是因为我在Mac上,而原始jar是在不同平台上创建的。
  2. 这是因为创建包时有一些java runtime vars已定义(jar`s -J选项)。
  3. 这让我觉得我需要找到它创建的平台并尝试将其打包在那里,或者找出在打包操作期间定义的 -J -options。可能吗?怎么样?

0 个答案:

没有答案