首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不同的Java字节码分解成完全相同的p-代码和java代码。

不同的Java字节码分解成完全相同的p-代码和java代码。
EN

Stack Overflow用户
提问于 2015-01-27 09:30:39
回答 1查看 403关注 0票数 1

我已经生成了两个java字节码文件1.class2.class,如果使用十六进制文件查看器检查它们,它们是不同的:

然而,反编译的p代码都是相同的:

  • 1. -> 1.java
  • 2. -> 2.java

我还可以使用jd将它们反编译成Java源代码,同样,两个字节代码文件生成完全相同的Java源代码:

因此,它看起来很好,但是当我将字节码的两个副本加载到类加载器中时,1.class副本会给出以下错误:

有人有线索吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-27 11:48:44

如果使用javap -l打印行号信息,则可以发现2.class具有doIt(String, String, AppContext)的下列行号表

代码语言:javascript
复制
LineNumberTable:
  line 56: 0
  line 57: 11
  line 58: 19
  line 60: 23
  line 61: 65

根据这一点,行号61链接到字节码索引65,而相同的方法仅由总共64字节定义。因此,此表不能正确,因此将引发验证程序错误。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28167072

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档