JD-GUI将jar包反编译成Java源代码

 2024-01-13 00:02:55  阅读 0

程序员不可避免地要学习其他Java项目的代码。 但有时你只能获取.calss文件、jar包或war包。 这时候就要求程序员能够熟练地将这些类型的文件反编译成Java代码,形成可编译可运行的项目。 本文介绍的反编译工具是JD-GUI。 反编译后的jar包就是一个项目的jar包。

下载链接

提取码g8v8

下载后,解压。 无需安装。 双击打开exe文件。

java编译后的文件类型_java类编译失败_编译后的类型为

open file选择要反编译的jar包,

java类编译失败_java编译后的文件类型_编译后的类型为

打开,左边->com目录就是java源代码文件

java类编译失败_java编译后的文件类型_编译后的类型为

点击你想查看的文件,就可以看到源代码。 点击带下划线的变量符号,会自动跳转到定义处。 也可以搜索变量名,但是搜索会很慢,需要等待一段时间。

这样就只能查看代码了。 要编译、修改和运行代码,必须将所有代码提取出来形成一个项目。 点击文件->全部保存

java编译后的文件类型_java类编译失败_编译后的类型为

源码会保存为压缩包

java编译后的文件类型_java类编译失败_编译后的类型为

压缩包解压后分为三个文件夹

java编译后的文件类型_java类编译失败_编译后的类型为

java代码全部在BOOT-INF//com中

java编译后的文件类型_编译后的类型为_java类编译失败

将目录中的所有内容复制到创建的空项目中进行编译和运行。 必须正确复制目录层次结构。 。 将pom.xm中的内容复制到反编译解压目录下的同名文件中,并粘贴到工程对应的文件中。

现在项目代码有了,配置文件也有了,但是一般情况下项目无法运行成功。 因为反编译出来的pom不是特别准确,所以项目需要的很多包可能不在pom中。 或者原项目中使用的一些jar包是手动导入到项目中的,没有被pom统一管理。

最好的办法就是从反编译的jar包中提取出所有需要的jar包。

将.jar后缀名更改为zip .zip并解压到当前文件夹。

java编译后的文件类型_编译后的类型为_java类编译失败

解压后的BOOT-INF\lib包含了本项目需要的所有jar包。 通过add jar将所有jar包添加到项目中。

java类编译失败_编译后的类型为_java编译后的文件类型

这里我们已经非常接近成功运行项目了,因为反编译的代码并不是特别准确。 有些代码需要手动分析修改,或者修改不成功,只能注释掉才可以编译。 有些包在运行时可能会报错,主要是pom引入的包与手动导入的包冲突,或者有些包版本不对,需要一一解决。 当然,有些反编译项目能够正确运行,不报错,这当然是最好的。

标签: 源代码 jd-gui

如本站内容信息有侵犯到您的权益请联系我们删除,谢谢!!


Copyright © 2020 All Rights Reserved 京ICP5741267-1号 统计代码