5

我正在使用 Beyond Compare 4 (4.1.9) 来比较战争文件。

我需要比较在几个包中找到的文件.class 。

  1. 我如何使用这个产品比较它们(Beyond Compare 4)?
  2. 否则还有其他产品可以比较war文件并编译.class文件吗?
4

4 回答 4

11

双击 Beyond Compare 文件夹 compare 中的 war 文件会将其展开为文件夹,因为 war 文件本质上是 zip 文件。

要在 Beyond Compare 中将 Java 类文件反编译为源代码,请安装Java 类到源文件格式。安装文件格式后,当您双击 .war 存档中的 .class 文件时,它将在 Beyond Compare 的 Text Compare 中显示反编译的源代码。

文件格式下载页面: http ://www.scootersoftware.com/download.php?zz=kb_moreformatsv4

请注意,Java 类到源文件格式仅适用于 Windows,不适用于 Beyond Compare 的 Linux 或 Mac 版本。

于 2016-12-07T21:31:14.463 回答
2
  1. 从http://www.scootersoftware.com/download.php?zz=kb_moreformatsv4下载Java 类到源文件格式

  2. 在 Beyond Compare 中,选择工具 | 导入设置

  3. 填写下载的文件名,然后单击下一步并继续完成。

于 2019-09-25T11:56:03.837 回答
0

选项:javap -l -p -c -constants %s > %t 2>&1 :在 BeyondCompare4 4.3.7(迄今为止的最新版本)上对我不起作用,如果直接通过 cmd 使用,则会给出 .class输出,但格式不好,对于我的 Java 阅读器来说,它并不是真正可解释的。

通过 http://www.scootersoftware.com/download.php?zz=kb_moreformatsv4下载格式的选项:对我也不起作用。这个库是基于http://varaneckas.com/jad的,它已经很老了。

我推荐并且有效的选项是:下载https://github.com/kwart/jd-cli(项目基于我们所知道的著名的“Java Decompiler”或“jd-gui”)。安装后,在 BeyondCompare4 中执行以下操作:进入格式,创建新格式,使用外部程序,然后使用以下命令:C:\Users%USERNAME%\jd-cli-1.2.0-dist\jd-cli .bat %s > %t 2>&1

希望这会有所帮助。

于 2021-06-16T16:37:05.347 回答
0

我最近遇到了在 Beyond Compare 4 中比较类文件的需求,所以我发现添加一个外部程序并使用javap -l -p -c -constants %s > %t 2>&1对我来说已经足够了。只需确保一个比较新javap的 PATH 可以理解您想要比较的任何类文件格式。不需要额外的软件并且是跨平台兼容的。

于 2020-06-20T01:49:22.533 回答