我们专注攀枝花网站设计 攀枝花网站制作 攀枝花网站建设
成都网站建设公司服务热线:400-028-6601

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

反编译java代码 java编译和反编译

如何将java中的.class文件反编译

安装Java jdk后

成都创新互联从2013年创立,是专业互联网技术服务公司,拥有项目成都网站建设、成都做网站网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元兴平做网站,已为上家服务,为兴平各地企业和个人服务,联系电话:13518219792

看安装目录里有没有jad.exe,没有要下载,一般都有的

配置Java环境变量

开始-运行-cmd-回车-进入命令行窗口:

cd+空格+class文件所在路径:

按下面的命令进行反编译:

例如:[2] jad -sjava example.class 回车

在目录里可以看到example.java源文件

[1] 反编译一个class文件:jad example.class,会生成example.jad,用文本编辑器打开就是java源代码

[2] 指定生成源代码的后缀名:jad -sjava example.class,生成example.java

[3] 改变生成的源代码的名称,可以先使用-p将反编译后的源代码输出到控制台窗口,然后使用重定向,输出到文件:jad -p example.class myexample.java

[4] 把源代码文件输出到指定的目录:jad -dnewdir -sjava example.class,在newdir目录下生成example.java

[5] 把packages目录下的class文件全部反编译:jad -sjava packages/*.class

[6] 把packages目录以及子目录下的文件全部反编译:jad -sjava packages/**/*.class,不过你仍然会发现所有的源代码文件被放到了同一个文件中,没有按照class文件的包路径建立起路径

[7] 把packages目录以及子目录下的文件全部反编译并建立和java包一致的文件夹路径,可以使用-r命令:jad -r -sjava packages/**/*.class

[8] 当重复使用命令反编译时,Jad会提示“whether you want to overwrite it or not”,使用-o可以强制覆盖旧文件

[9] 还有其他的参数可以设置生成的源代码的格式,可以输入jad命令查看帮助,这里有个人做了简单的翻译:jad命令总结

[10] 当然,你会发现有些源文件头部有些注释信息,不用找了,jad没有参数可以去掉它,用别的办法吧。

什么是Java代码的编译与反编译

java代码的编译,就是你写完代码,java编译器把它编译成java虚拟机认识的代码,然后再由虚拟机执行它。反编译就是反过来,当然这不是java虚拟机干的事儿,是你找反编译工具干的事儿,把编译过的代码反编译成人看得懂的源代码。

java反编译的代码可以用吗

不行。可执行文件你即使反编译出来 也不是源码。包括所有的反编译软件,反编译出来的,都不是源码,别看着反编译出来的代码感觉是对的,有的反编译出来还是可以运行的都不算。另外反编译别人的软件 ,只能自己研究,去过用于商业用途可是犯法的哦


分享文章:反编译java代码 java编译和反编译
本文路径:http://shouzuofang.com/article/hpohio.html

其他资讯