我正在使用Beyond Compare 4(4.1.9)来比较war文件。
我需要比较在几个包中找到的.class文件。
- 我如何使用这个产品(Beyond Compare 4)来比较它们?
- 否则,有另一个产品可以比较war文件并编译.class文件吗?
我正在使用Beyond Compare 4(4.1.9)来比较war文件。
我需要比较在几个包中找到的.class文件。
在Beyond Compare的文件夹比较中双击war文件,它会扩展为文件夹,因为war文件本质上是zip文件。
要将Java类文件反编译为源代码,请安装 Java Class to Source文件格式。安装文件格式后,当您在.war档案中双击.class文件时,它将在Beyond Compare的文本比较中显示反编译的源代码。
文件格式下载页面: http://www.scootersoftware.com/download.php?zz=kb_moreformatsv4
请注意,Java类到源文件格式仅适用于Windows,不适用于Beyond Compare的Linux或Mac版本。
从http://www.scootersoftware.com/download.php?zz=kb_moreformatsv4下载 Java Class to Source文件格式。
在Beyond Compare中,选择工具 | 导入设置。
填写下载的文件名,点击下一步并继续完成。
选项: 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反编译器”或“jd-gui”项目)。安装完成后,在BeyondCompare4中执行以下操作: 进入格式,创建一个新的格式,使用外部程序,并使用以下内容: C:\Users%USERNAME%\jd-cli-1.2.0-dist\jd-cli.bat %s > %t 2>&1 希望这能对您有所帮助。最近我需要在Beyond Compare 4中比较类文件,所以我发现添加一个外部程序并使用javap -l -p -c -constants %s > %t 2>&1
就足够了。只需确保PATH中有一个相当新的javap
,它可以理解您想要比较的任何类文件格式。不需要额外的软件,而且跨平台兼容。