社区
Java
帖子详情
class反编译错误
myjavauser
2011-07-16 06:10:39
以前有个用eclipse编译的class文件(JDK1.3),现在用JAD反编译成JAVA文件后,再重新编译成class文件,发现编译后的class与原来不一样(覆盖回去后执行报错),不知道是什么原因?
...全文
172
4
打赏
收藏
class反编译错误
以前有个用eclipse编译的class文件(JDK1.3),现在用JAD反编译成JAVA文件后,再重新编译成class文件,发现编译后的class与原来不一样(覆盖回去后执行报错),不知道是什么原因?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
编程小妞儿
2011-07-20
打赏
举报
回复
[Quote=引用 2 楼 myjavauser 的回复:]
1、JDK版本用的仍是原来的1.3,不知道是否有小版本之间的区别?
2、将Class用XJAD反编译得到的Java再重新编译,并不报错,但是结果仍然不对。过程:Class---Java(不做修改)---Class,覆盖原来的Class,发现新Class文件大小与原来不一致,同时使用新Class时程序报错
[/Quote]
我对这个反编译,有点心得了。。。要是分数再高点的话,我可以帮你调下
龙四
2011-07-19
打赏
举报
回复
先把具体错误给出来大家看看
myjavauser
2011-07-19
打赏
举报
回复
1、JDK版本用的仍是原来的1.3,不知道是否有小版本之间的区别?
2、将Class用XJAD反编译得到的Java再重新编译,并不报错,但是结果仍然不对。过程:Class---Java(不做修改)---Class,覆盖原来的Class,发现新Class文件大小与原来不一致,同时使用新Class时程序报错
编程小妞儿
2011-07-16
打赏
举报
回复
1.反编译得到的java文件会报一些语法错误,如果直接生成class的话,有语法错误的方法就编译不过去,就是空的.所以第一步要确定再次编译class时没有语法错误!
2.查看jdk版本是否相同
class
类
反编译
工具
在排查
错误
的时候,有时候会需要查看编译后的
class
文件,此工具就是
反编译
的工具
BeyondCompare支持java8的
class
反编译
插件
因本人使用的JDK1.8,测试可用,高版本JDK暂未测试。 使用步骤:beyond compare的菜单--工具(tools)--- 导入设置(import ...将jar包或
class
文件拖放对比的时候,在对比窗口上选择编译方式为Java
Class
to source。
Beyond compare(已经配置好
class
反编译
,解压可用)
Beyond Compare是一套由Scooter Software推出的文件比较工具。主要用途是对比两个文件夹或者文件,并将差异以颜色标示。比较范围包括目录,文档内容等, 提高工作效率和准确性
方便好用的
class
反编译
小工具--jd-gui
在排查
错误
的时候为了方便看编译后的
class
文件,使用这个
反编译
小工具查看源码,非常方便。
Beyond compare 安装java
反编译
插件
重新打开beyond comare
class
转换
错误
C:\Users\wdd\AppData\Roaming\Scooter Software\Beyond Compare 4\Helpers\Java\
CLASS
_to_JAVA.bat 修改为java -jar Helpers\Java\procyon-decompiler-0.5.36.jar %1 > %2
Java
50,523
社区成员
85,601
社区内容
发帖
与我相关
我的任务
Java
Java相关技术讨论
复制链接
扫一扫
分享
社区描述
Java相关技术讨论
java
spring boot
spring cloud
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章