class文件的反编译过程

news/2024/7/4 1:46:20

前言

这几天由于工作需要进行了一些反编译的工作,之前的同事离职了,负责的项目代码转交给我,这个项目好长时间没有用了,在看源码的过程中发现里边少了几个类,几经周折找到了以前编译好的jar包。要想恢复就智能进行反编译了。所以就有了以下的这篇文章,总共的来说编译过程还是简单的。

正文

经过查资料普遍都是数jad比较靠谱好用所以就下载的这个反编译的包地址:https://varaneckas.com/jad/

在这里插入图片描述
这些都是,需要什么版本就下载什么版本好了。

下载完成后将要反编译的class文件放到相应的位置,如下:
在这里插入图片描述
具体的步骤就是:
1、讲要反编译的class文件放入到 jad.exe 的文件夹中
2、然后进入到 cmd 进入到 jad.exe 的文件中入下图
在这里插入图片描述
3、输入命令:jad -o -r -s java -d src com/**/**.class
在这里插入图片描述
然后文件就编译好了。

我用编译前的文件跟编译后的文件进行了一些对比,左边是写的原java文件,右边是通过class反编译后的文件。
在这里插入图片描述
在这里插入图片描述
还有一些其他的,就是反编译生成的文件将构造类什么的也都显示出来了。所以通过文件的对比可以更清楚的了解到java的编译过程和相关的运行机制。

结束

持续填坑中。。。


http://www.niftyadmin.cn/n/1974375.html

相关文章

2014-11-6Android学习------Spinner下拉选择框控件学习

写一篇文章很辛苦啊!!! 转载请注明,联系请邮件nlp30508qq.com 我学习Android都是结合源代码去学习,这样比较直观,非常清楚的看清效果,觉得很好,今天的学习源码是网上找的源码 百度搜…

诡异的 unnest 函数

为什么80%的码农都做不了架构师?>>> 发现函数 unnest 定义如下: CREATE OR REPLACE FUNCTION unnest(anyarray)RETURNS SETOF anyelement AS array_unnestLANGUAGE internal IMMUTABLE STRICTCOST 1ROWS 100; 为了可读性,这是还原…

简简单单小文章-声明

前言 好长时间也没写文章了,原因有很多,就不在这说了,好不容易有个空了就拿起了java基础翻看着,然后也就有了这篇文章。 正文 java中常用的声明有三种方式,那么这三种方式有什么区别呢?对于jvm熟悉的朋友…

2014-11-6Android学习------Spinner下拉选择框控件学习(二)---监听事件

写一篇文章很辛苦啊!!! 转载请注明,联系请邮件nlp30508qq.com 我学习Android都是结合源代码去学习,这样比较直观,非常清楚的看清效果,觉得很好,今天的学习源码是网上找的源码 百度搜…

[python]代码中包含中文,提示:SyntaxError: Non-ASCII character '\xcd'

解决方法: 把文件编码方式改为gbk即可。在代码开头写上: # codinggbk 转载于:https://www.cnblogs.com/sophia194910/p/5085218.html

一文彻底搞懂正向代理和反向代理

前言 多长时间不写博客了?反正一双手是数不过来了,今天就顺手写点小知识点。主要想说的是正向代理和反向代理。 正文 代理 首先先说概念: 代理的概念是什么呢? 百度百科提供的说明: 代理服务器(Proxy S…

2014-11-6Android学习------在手机上用鼠标绘图的处理---贝塞尔曲线(一)

写一篇文章很辛苦啊!!! 转载请注明,联系请邮件nlp30508qq.com 我学习Android都是结合源代码去学习,这样比较直观,非常清楚的看清效果,觉得很好,今天的学习源码是网上找的源码 百度搜…

JPA数据操作汇总,常用的数据操作方法都在这了

前言 写博客总结,最近公司进新人,写了个内部文档顺便整理了一下jap的数据操作demo 正文 第一种方式: 根据客户名称查询客户,使用jpql的形式查询,配置jpql语句,使用的Query注解 Query(value"from …