gpt4 book ai didi

jar - 让 WinMerge 比较 .jar 文件

转载 作者:行者123 更新时间:2023-12-01 00:43:28 25 4
gpt4 key购买 nike

我有两个目录,其中包含一些 *.jar 和 *.war 文件,以及一些元数据文件和一个带有 *.spring 扩展名的文件,它实际上只是一个名称奇怪的 zip 文件。像这样的:

- dist1
- a subfolder
- some text file.txt
- application-context.xml
- arch1.jar
- arch2.jar
- arch3.jar
- super-cool.war
- xtremely-awesome.spring
- dist2
- a subfolder
- some text file.txt
- application-context.xml
- arch1.jar
- arch2.jar
- arch3.jar
- super-cool.war
- xtremely-awesome.spring

我想对这些目录进行目录比较,将文件作为子文件夹而不是二进制文件进行比较。其他文件,包括文件内外的文本和二进制文件,应照常进行比较。

我知道我可以手动分解所有文件并比较分解后的版本,但是由于它们是由构建脚本生成的,并且分解它们会增加构建项目的大量时间,因此最好这样做为了比较,最好在 diff 工具中。

我尝试过使用 WinMerge7zip plugin ,但我无法让插件工作(文件在文件夹比较 View 中未被识别为文件)。我尝试将安装作为“共享安装”和“应用程序特定安装”(将安装程序指向 C:\Programs\WinMerge\WinMergeU.exe)。我还尝试手动将插件中的 .dll 文件复制到 MergePlugins 文件夹中,但没有成功。

如何让这个在 WinMerge 中工作?如果不可能,是否还有其他具有此功能的好工具?

最佳答案

自 WinMerge 2.15.2 (2018-01-28) 起,开箱即用支持存档。请参阅 change log功能更改的“存档支持”部分。

对于 2.15.2 版本,变更日志显示:

Archive support

  • Install 7-zip plugin by default

Options dialog

  • ...
  • Remove "Use stand-alone 7-Zip if available" and "Use local 7-Zip from WinMerge folder" radio button from "Archive Support" page (Now always use local 7-Zip from WinMerge folder)
  • ...

在 WinMerge 2.14.01 中,启用存档支持的最简单方法是

  • 下载7-Zip plugin for WinMerge 2,
  • 使用其安装程序将支持的最新 7-Zip 的 DLL 和相关组件安装到 WinMerge3 文件夹中(选择“应用程序特定安装”和“启用独立操作”),以及
  • 更改 WinMerge 设置以使用这些文件并自动检测存档类型(在“选项 → 存档支持”中选择“启用存档文件支持”、“使用 WinMerge 文件夹中的本地 7-Zip”和“从文件签名中检测存档类型”)。

Plugin installer with correct final settings screenshot
图像和解决方案由 WinMerge 的开发者 jtuc 提供。我在 a WinMerge forum thread 中找到它们.

然后,如果您比较两个 JAR 文件(或任何其他基于存档格式的文件,例如 ODF 或 OOXML),则应该比较它们的内容,就像它们首先被提取一样。它适用于我在 Windows 10 上。

关于 installing archive support 的一些细节WinMerge 手册中提到了。

1 WinMerge 2.14.0 是截至 2017-06 的最新稳定版本,于 2013-02-03 发布。
2 Merge7z DllBuild 0028 是 2015-09 的最新版本,于 2010-12-28 发布。
3 对于 Merge7z DllBuild 0028 中的 7-Zip 9.20,DLL 是 Merge7z920.dllMerge7z920U.dll,以及 WinMerge 的路径可执行文件可能是 C:\Program Files (x86)\WinMerge\WinMergeU.exe。 “U”代表 DLL 和可执行文件名称中的 Unicode。对于WinMergeU.exe,只需要Merge7z920U.dll,但最好两者都有,不用管。

关于jar - 让 WinMerge 比较 .jar 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17020016/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com