Java 有没有一个工具可以用来在二进制/字节码级别比较两个JAR?

Java 有没有一个工具可以用来在二进制/字节码级别比较两个JAR?,java,bytecode,java-compiler-api,Java,Bytecode,Java Compiler Api,这个想法是比较两个JAR,看看它们是否来自同一个源代码,并比较它们在二进制/字节码级别是否相同。另外,如果它们都是使用相同的编译器编译的,即EclipseJDT或JIT等编译器 我看过Apache Common BCEL,但它只在将原始字节码分解为源代码后进行比较,然后像diff工具一样进行比较;这比较了文本行的署名,但我想比较的是字节码,而不是将其分解/重新排列为源代码,然后进行比较 我在看如何比较直接的二进制/字节码比较 免费工具/API建议最好:) Ta我喜欢使用超越比较(注意它不是免费的

这个想法是比较两个JAR,看看它们是否来自同一个源代码,并比较它们在二进制/字节码级别是否相同。另外,如果它们都是使用相同的编译器编译的,即EclipseJDT或JIT等编译器

我看过Apache Common BCEL,但它只在将原始字节码分解为源代码后进行比较,然后像diff工具一样进行比较;这比较了文本行的署名,但我想比较的是字节码,而不是将其分解/重新排列为源代码,然后进行比较

我在看如何比较直接的二进制/字节码比较

免费工具/API建议最好:)
Ta

我喜欢使用超越比较(注意它不是免费的应用程序)


我喜欢使用Beyond Compare(注意它不是免费的应用程序)


根据您的要求,您可以尝试以下任何一种jar comparator工具

免费供个人使用

在sourceforge上

基于操作系统


根据您的要求,您可以尝试以下任何一种jar comparator工具

免费供个人使用

在sourceforge上

基于操作系统


extradata产品
在反编译后进行比较,这不是我想要的。只是重复一下。我想比较原始字节码。要检查Java库API的向后二进制和源代码级兼容性,您可以使用japi编译检查器…
extradata产品
在反编译后进行比较,这不是我想要的。只是重复一下。我想比较原始字节码。要检查Java库API的向后二进制和源代码级兼容性,可以使用japi编译检查器…使用Beyond Compliance checker的好处是,只需指定要执行的外部命令行,就可以创建自己的文件格式处理程序。我已经使用这个功能创建了一个
.class
比较器,用于区分Procyon的反编译器输出。对命令行参数的简单调整将产生不同的格式化字节码。使用Beyond Compare的好处是,您只需指定要执行的外部命令行,即可创建自己的文件格式处理程序。我已经使用这个功能创建了一个
.class
比较器,用于区分Procyon的反编译器输出。对命令行参数进行简单的调整将产生不同的格式化字节码。