我的应用程序正在使用大约30-40个罐子。由于应用程序已经很久了,许多人已经在我之前处理过,所以我想弄清楚,如果有任何自定义,或者没有。
目前我正在尝试从可用版本中找到所有的罐子,然后下载它们。然后我打算对它们进行差异合并以找出差异。
我认为应该有另一种方法。请告诉。通过查看JAR名称或Manifest文件可以找到一些。但其他人呢?
请帮忙。
答案 0 :(得分:1)
您可以计算哈希码,例如MD5。如果两个jar都具有相同的MD5哈希码,则内容很可能也是相同的。
否则,如果你有一个很好的测试覆盖率,你可以采用尝试和错误的方法:
答案 1 :(得分:0)
我能想到获得一组依赖项的最简单方法是创建一个新的Maven项目,并将所需的每个jar添加到项目pom文件中。
Maven,如果你不知道是一个Java构建工具,它专注于简化依赖管理。它通过一个pom.xml文件来实现,该文件列出了有关项目的信息,包括它所需的jar(依赖项)列表。依赖关系由以下XML格式的名称(artifactId),组和版本标识...
<dependency>
<groupId>group-a</groupId>
<artifactId>artifact-b</artifactId>
<version>1.0</version>
</dependency>
您可以创建一个新的mvn项目(首先下载并安装maven),然后执行:
mvn archetype:generate
创建新项目。这将为您提供一个没有依赖项的空项目和一个模板pom.xml文件。从那里,您可以编辑您的依赖项列表并添加您需要的40个罐子中的每一个。一旦你完成了那个......
mvn dependency:copy-dependencies
这会将您需要的所有jar文件从Maven在线中央存储库中提取到项目的目标/依赖项文件夹中。从那里你可以编写一个脚本来执行jar文件的md5sum比较。
在official homepage了解有关Maven的更多信息。
答案 2 :(得分:0)
检查此工具,http://winmerge.org/您确实需要它是免费且非常棒的。