社区
Java SE
帖子详情
jad怎么反编到class
andrew064
2009-12-25 02:44:46
我将其中一两个class文件反编后,输出的是jad文件, 改为java就是源码啦, 我修改了之后, 又怎么返回到class文件呢,
用JDK 6 的javac 输出class 提示丢失包, 和很多个找不到符号, 请教一下该怎么做, 谢谢!!!
...全文
205
22
打赏
收藏
jad怎么反编到class
我将其中一两个class文件反编后,输出的是jad文件, 改为java就是源码啦, 我修改了之后, 又怎么返回到class文件呢, 用JDK 6 的javac 输出class 提示丢失包, 和很多个找不到符号, 请教一下该怎么做, 谢谢!!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
22 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
andrew064
2009-12-25
打赏
举报
回复
[Quote=引用 17 楼 huxiaowi 的回复:]
引用 8 楼 andrew064 的回复:
那如果没有源程序, 似乎是无法再编译回去的是吗?
有~较笨的方法:
假造它的依赖类。。。骗过编译器。
[/Quote]
请教你的方法, 谢谢!
andrew064
2009-12-25
打赏
举报
回复
[Quote=引用 16 楼 huxiaowi 的回复:]
引用 15 楼 andrew064 的回复:
为什么反编class为jad的时候不需要这些包,现在要把java编绎成class却需要呢?
编译原理LZ大学没学过么?
java编译器编译源文件时会进行词法分析、语法分析、语义分析...
而JAD不是一个编译器。。。
[/Quote]
不好意思, 我英语专业的, JAVA第一次接触, 我是有用到才去了解一点, 大家不要见怪.
andrew064
2009-12-25
打赏
举报
回复
[Quote=引用 19 楼 inkfish 的回复:]
2.再编译的时候原先依赖的calss、jar找不到。
如果遇到第二点,可以把原先的class打成jar,作为classpath的一部分去编译,就能成功。
[/Quote]
这个方法等下试试
墨水鱼
2009-12-25
打赏
举报
回复
反编译命令:jad -sjava *.class,者可以把一个目录下所有class反编译成.java文件,无需修改后缀名。
但是再编译取决于两点:
1.是否反编译的是合法的java代码,反编译完,往往try catch finally会反编译错误。
2.再编译的时候原先依赖的calss、jar找不到。
如果遇到第二点,可以把原先的class打成jar,作为classpath的一部分去编译,就能成功。
ChDw
2009-12-25
打赏
举报
回复
jar里面的类不需要再反编译了,你只需要javac -classpath t.jar A.java就可以了
JAD不需要是转为Class中已经声明了清楚要调用的方法、成员的准确名称。所以可以反编译出来
但是在编译的时候,javac 就需要知道callMethod(....)这样一个语句时,方法的参数是什么、有什么成员变量等。
huxiaowi
2009-12-25
打赏
举报
回复
[Quote=引用 8 楼 andrew064 的回复:]
那如果没有源程序, 似乎是无法再编译回去的是吗?
[/Quote]
有~较笨的方法:
假造它的依赖类。。。骗过编译器。
huxiaowi
2009-12-25
打赏
举报
回复
[Quote=引用 15 楼 andrew064 的回复:]
为什么反编class为jad的时候不需要这些包,现在要把java编绎成class却需要呢?
[/Quote]
编译原理LZ大学没学过么?
java编译器编译源文件时会进行词法分析、语法分析、语义分析...
而JAD不是一个编译器。。。
andrew064
2009-12-25
打赏
举报
回复
为什么反编class为jad的时候不需要这些包,现在要把java编绎成class却需要呢?
andrew064
2009-12-25
打赏
举报
回复
我找到包了, 是.jar格式的, 应该把这个文件放到哪里, 要不要先把里面的class先反编成java文件, 然后放到对应的目录下?
ChDw
2009-12-25
打赏
举报
回复
是没有找到com.jason.core.exception 包,并不是指 com.jason.core.exception.class文件
你应该去找到这个class所在的系统中找这个包
蒋涛666
2009-12-25
打赏
举报
回复
我也想知道这个问题!
andrew064
2009-12-25
打赏
举报
回复
有提示, 软件包 com.jason.core.exception 不存在
但是找不到exception.class这个文件,
ChDw
2009-12-25
打赏
举报
回复
你应该找到这两个Class所依赖的jar才可以进行编译。
liurui03263348
2009-12-25
打赏
举报
回复
如果你那两个java文件调用了其它包的话,那就无法编译回去,除非你把这两个文件所调用的包也反编译成java文件,然后在重新运行编译才行!
andrew064
2009-12-25
打赏
举报
回复
那如果没有源程序, 似乎是无法再编译回去的是吗?
liurui03263348
2009-12-25
打赏
举报
回复
如果你想把修改后的.java文件在编译回去的话,你这能把它放回源程序重新运行!我就遇到过这种问题!
andrew064
2009-12-25
打赏
举报
回复
我设置了path, classpath 结果还是同样的提示, 郁闷....
系统变量下新建Classpath
.;C:\Program Files\Java\jdk1.6.0_13\lib\dt.jar;C:\Program Files\Java\jdk1.6.0_13\lib\tools.jar;C:\Program Files\Java\jdk1.6.0_13\lib\jconsole.jar
path后面添加
;C:\Program Files\Java\jdk1.6.0_13\bin
没错吧,
huxiaowi
2009-12-25
打赏
举报
回复
参照三楼。。。
andrew064
2009-12-25
打赏
举报
回复
不行啊, 我只是针对其中某两个文件反编, 用javac 都提示找不到包和找不到符号
huxiaowi
2009-12-25
打赏
举报
回复
那是你的CLASSPATH没设置好。。。
加载更多回复(2)
么把.
class
文件
反编
译成.java 经修改后再编译成.
class
其中,
JAD
是一个流行的
反编
译工具,它可以将.
class
文件
反编
译成.java 文件。 二、
JAD
反编
译工具的使用 使用
JAD
反编
译工具非常简单。首先,需要下载
JAD
反编
译工具并将其解压缩到指定目录下。然后,打开...
eclipse集成
JAD
反编
绎工具
2.,
反编
绎工具
jad
.exe:解压后就能找到
JAD
可执行文件. 3.打开eclipse开发工具:window--preferences--java--
jad
clipse找到后设置其右边窗口对应目录.path for decompler:设置
反编
绎工具的全路径名称(如:全路径名称\
jad
...
eclipse
反编
class
插件
jad
clipse_3.3.0
6. 安装完成后,可以在Eclipse的Package Explorer或Project Explorer视图中右键点击.
class
文件,选择“Open With” -> “
Jad
Clipse (
JAD
反编
译器)”来查看
反编
译后的源代码。
jad
clipse插件的使用极大地提高了...
java
反编
译工具(.
class
文件
反编
译成.java文件)
Java
反编
译是将已编译的字节码(.
class
文件)转换回源代码(.java文件)的过程,这对于理解和学习已有的Java程序、逆向工程或调试都是很有用的。标题提到的"java
反编
译工具"是用于这个目的的软件,它能够帮助开发者...
反编
.
class
文件的工具
总之,“
反编
.
class
文件的工具”为开发者提供了一种深入理解Java字节码的途径,它们是Java开发和调试过程中的有力辅助工具,有助于提升开发效率和问题解决能力。正确使用这些工具,可以让你在面对复杂的代码或库时,...
Java SE
62,623
社区成员
307,257
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章