温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

JD-GUI怎么反编译jar包为Java源代码

发布时间:2022-01-17 15:41:00 来源:亿速云 阅读:822 作者:柒染 栏目:大数据

JD-GUI怎么反编译jar包为Java源代码,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

程序员难免要借鉴其他java工程的代码。可有时只能拿到.calss文件,jar包或者war包,这个时候要求程序员能熟练的将这些类型文件反编译为Java代码并形成可编译运行的项目。本文介绍的反编译工具是JD-GUI。反编译的jar包是一个springboot项目的jar包。

下载地址https://pan.baidu.com/s/1zomK-U1eBN2_Z4wqscUvwA

提取码g8v8

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

JD-GUI怎么反编译jar包为Java源代码

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

JD-GUI怎么反编译jar包为Java源代码

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

JD-GUI怎么反编译jar包为Java源代码

点击想查看的文件,可以看到源代码,点击有下划线的变量符号,会自动跳转到定义处,也可以搜索变量名,但是搜索时会比较慢,需要多等一会。

这样只能查看代码,要编译修改运行代码,就要把所有代码提取出,形成工程项目。点击File->save all source

JD-GUI怎么反编译jar包为Java源代码

源代码会保存为压缩包

JD-GUI怎么反编译jar包为Java源代码

压缩包解压是三个文件夹

JD-GUI怎么反编译jar包为Java源代码

java代码都在BOOT-INF/calsses/com里

JD-GUI怎么反编译jar包为Java源代码

将classes目录里的所有东西一起拷贝到建立好的空的springboot项目中编译运行,目录层次要拷贝正确。application.properties和pom.xm里的内容复制反编译解压目录同名文件里的,粘贴到springboot项目对应文件里。

现在项目代码有了,配置文件也有,但是一般还不能成功运行项目。因为反编译的pom不是特别准确,可能很多项目需要的包,pom里没有import。或者原项目用的一些jar包本来就是手工导入项目,不是pom统一管理的。

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

将test01.jar后缀名改成zip test01.zip,解压到当前文件夹。

JD-GUI怎么反编译jar包为Java源代码

解压后的BOOT-INF\lib里有本项目需要的全部jar包,将所有jar包通过add external jar的方式加到项目中。

JD-GUI怎么反编译jar包为Java源代码

到这里距离成功运行项目很近了,因为反编译的代码也不是特别精确,有些代码需要人工分析修改,或者修改不成功只能注释掉,才能通过编译。运行时有些包可能报错,主要是pom引入的包和手工导入的包冲突,或者有些包版本不对,也需要逐一解决。当然,有些反编译项目直接正确运行不报错误,这样当然最好了。

关于JD-GUI怎么反编译jar包为Java源代码问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI