jd-gui众所周知,业界公认的反编译必备工具. 笔者目前遇到一个java项目,社区版,想做一个本地化的版本,询问官方,官方说闭源,无奈之下只能反编译了. 面对那么多jar,jd-gui一个个去反编译保存,工作量的确很大.幸好在网上找到一个不错的工具 高能预警:jd-gui反编译的错误的,你敢不敢放到cfr来反编译试一试,保证有惊喜. CFR - another java decompiler 特性: CFR will decompile modern Java features - Java…
引用自官方内容 Eclipse Class Decompiler是一款Eclipse插件,整合了多种反编译器,和Eclipse Class Viewer无缝集成,能够很方便的使用插件查看类库源码,进行Debug调试. 同时还提供了在线自动查找源代码,查看Class二进制字节码的功能. Eclipse Class Decompiler对JDK的最低要求为JDK1.6, 能反编译和debug各版本的Class文件,支持JDK8的Lambda语法,同时支持中文等非Ascii码字符集的解析,支持Ecli…
1 直接的jar文件可以用winrar解压,然后得到class文件,但是这里得到的class文件也是编译过的二进制文件,用传统的文本编辑器无法打开. 2 用XJad这个软件可以反编译Jar文件,直接找到jar文件,然后反编译完成. 3 之后得到的反编译文件就很清楚,很干净.…
1.重新编译已经打包的Jar包,使用 Java Decompiler 打开需要重新编译的jar包,找到自己需要自己修改的Class文件 ,修改之后电子保存文件 ,保存的时候编译工具自动将class文件转换成了Java文件,选择自己需要保存的位置.进行保存(保存的时候之前的jar包的名字不需要修改) 2.打开编程工具(这里我使用Eclipse),并且创建一个Java项目(这里我创建一个maven项目,因为方便下载其他依赖的包),之后将Java文件加载,…
jad -o -r -d d:\src -s java C:\Users\spring\Desktop\egorder3.0\WEB-INF\classes\**\*.class -o - overwrite output files without confirmation (default: no) 无需确定覆写文件 -r - restore package directory structrure 恢复包目录结构 -s - output file extension (by default…
首先得进入jad的路径中,一般都放在jdk的安装目录的bin中 进入到该目录中,否则无法使用jad命令. jad -o -r -d F:\src -s java F:\classes\**\*.class. 当然之前得在jdk的bin中放入jad.exe文件.…
Java反编译利器(jd-gui)介绍 当要做白盒测试或安全测试时,我们需要借助工具扫描被测代码,相信大家都遇到过没有源代码,而需要反编译的情形吧,也可能大家用过jad工具,我这里介绍下方便的工具jd-gui工具,它很小,网上搜索关键字即可下载到,下载到软件包括一个名称为jd-gui.exe的文件,打开该软件时,会在同层目录下生成一个jd-gui.cfg的配置文件,用来记录之前操作过的java类(class)文件路径. 这里我们主要讲jd-gui的用法,不管我们是在文件夹(Web-inf\cla…
Jar 包(Java Archive)是对 Java 程序的打包,它可能包含源码,也可能没有. 对于有包含源码的 Jar 包,在 Eclipse 工程里设定好 source code 路径后能直接查看到远吗,对于理解代码.调试的帮助很大.而如果 Jar 包没有打包源码,实际上也可以通过反编译的方法得到源码.道理很简单,Java 规范中,生成的.class 文件所包含的信息完全能逆向的重构出源码. 当然,一些代码为了防止自身 Jar 包被人反编译,会做代码混淆掩人耳目.其中最简单的一种方法就是是通…
关注微信公众号:CodingTechWork,一起学习进步. 引言   在产品上线后,如果遇到问题阻塞,我们第一步要做的就是去查看日志,但是代码不是一个人写的,说不定就会遇到没有日志的,遇到这种情况,只能去看日志的报错行数是哪里,否则,无从下手.  查看日志报错行数时,发现现有代码又和线上的代码不一致,又阻塞了,怎么办?这个时候我们就需要反编译,反编译有很多工具可以使用,比如JD-GUI.本文接下来就介绍一下如何通过我们神奇的Idea软件进行反编译jar包. 实践 idea反编译插件   首先,…
Java 7 中的Switch 谈 Java版本更新和反编译知识          学习编程,享受生活,大家好,我是追寻梦的飞飞.今天主要讲述的是Java7中的更新Switch实现内部原理和JAD反编译知识,反编译很好玩的! Java语言大版本之间的更新,会添加一些比较好的改动.目前最流行的应该是Java7 版本的,现在java 8 已经推出,更多的是关注与移动互联网领域,比如位置信息.触摸即使.罗盘指针.重力感应之类的.不过到java 8 推广还有一段时间,所以就先学习Java7中的新改动的知…