如何制作Java反编译器?

Lit*_*ild -3 java decompiling decompiler

作为某个时间点的项目,我想制作自己的Java反编译器,将字节码转换回纯文本.

我为谷歌做了一些API,让我这样做,但我找不到.

所以我的问题是:我如何反编译类文件?
如果有API并且我错过了,请告诉我.

我知道书籍问题是不受欢迎的,但你认为Godfrey Nolan的编译Java语言是一个好的开始吗?

Ste*_*n C 7

所以我的问题是:我如何反编译类文件?

  • 通过编写大量的Java代码来实现反编译器......或者
  • 从现有的开源反编译器开始并修改它.(但您需要了解并遵守许可证......)

这些步骤之前需要进行背景研究/阅读,以了解领域,制定要求,设计等.这超出了SO问题的范围.

如果有API并且我错过了,请告诉我.

AFAIK,没有一个.

但是你应该能够找到其他形式的源代码.(可以重复使用的是任何人的猜测.但是,嘿,这是你的项目.)

(皱眉!)

我没有看过那本书,但它可能值得一读,特别是如果学习的唯一选择是逆转工程现有的代码库.尝试去你最喜欢的网上书店,阅读评论,ToC等等,并自己决定是否值得购买.