
正文
java代码无法反编译,为什么java无法编译
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
如何进行JAVA程序的反编译?
运行jd-gui.exe,进入主界面。点击菜单栏“File”下的子菜单“OpenFile”,在弹出框中选择.class文件。也可以拖动.class文件进入jd-gui中。选择的.class文件以及整个目录结构下的文件都会反编译成java文件。
-win32\temp 在Eclipse的Windows--Perference--General-Editors-File Associations中修改“*.class”默 认关联的编辑器为“JadClipse Class File Viewer”安装完成,双击class文件,Eclipse将自动反编译了。
Jad用于反编译Java类。你可以用Jad以纯文本的形式命令和阅读代码。 Eclipse Eclipse是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。
相关问答
Q1: 防止JAVA代码被反编译的方法
1、关键代码使用jni调用本地代码,用c或者c++编写,因此相对比较难于反编译 2 混淆java代码。混淆是不改变代码逻辑的情况下,增加无用代码,或者重命名,使反编译后的源代码难于看懂。
2、无法防止。.class文件的标准是公开的,无法防止别人反编译你的代码。你顶多可以用代码扰乱工具扰乱你的代码,这样反编译的代码就难以阅读。比如可以试试用proguard来扰乱(“加密”)和反扰乱(“解密”)你的代码。
3、如果只是为了使用和发布方便,不需要保护java代码,使用这些工具是很好的选择。
4、想不被反编译是不可能的。混淆器可以吧所有变量名,函数名,类名(系统类,函数名不变)统统用一两个字母代替,可以缩短代码长度,并且被反编译以后难以理解含义增加阅读难度。
Q2: java问题:为什么有些class文件反编译不了?
1、由于Java字节码的抽象级别较高,因此它们较容易被反编译。下面介绍了几种常用的方法,用于保护Java字节码不被反编译。
2、并不是所有的class都能反汇编成java文件的,尤其是那些经过obfuscation(代码混淆)的class文件,混淆器故意生成很难或者根本不可能被反汇编的程序。
3、是的,.class 文件可以反编译成.java文件,在网上就。
4、jd只是适合少量class文件,如果太多的话,类的引用就太繁琐了,偶尔会出错。我也是用XJAD反编译的,它可以反编译一个jar包。
Q3: 用小颖java源代码反编译编译出来的java无法转换成class
1、我偶尔用过这个工具 你单独反编译一个文件是不行的,因为这个文件里的类类可能继承自其它类,或者它引用了其它包的类。在编译时就会出错,故无法变成class文件。你可以尝试把整个jar进行反编译,然后尝试对其进行编译。
2、用运行命令 把你的java文件放到桌面,如果这个java类调用了其他Java类,那么要一起放进来 例如:Test.java 点击 运行---输入 javac Test.java 那么左面就会生成一个Test.class的文件,这个就是你要的。
3、javac编译生成不了class文件的情况可以从以下方面调试:cmd---javac 查看环境变量是否配置成功。如果没有成功重新配置(把java_home配置在系统变量里面)。
4、java程序编译之后没有产生class文件的原因如下:如果使用cmd进行编译之后,如果存在错误,是无法产生class文件的,也就不能执行。如果使用eclipse进行编译之后,没有开启自动编译,就不会自动产生class文件,需要开启自动编译。
Q4: 如何有效的防止Java程序被反编译和破解
1、针对反编译,推荐使用CBS赛博锁,通过把安全容器内嵌到操作系统中,对容器内的应用和数据进行加锁,程序和数据在容器内运行,实现最后一米数据安全,防止核心数据被泄露,防止服务器终端中病毒,防止反编译,反破解。
2、关键代码使用jni调用本地代码,用c或者c++编写,因此相对比较难于反编译 2 混淆java代码。混淆是不改变代码逻辑的情况下,增加无用代码,或者重命名,使反编译后的源代码难于看懂。
3、那么怎么增加反编译的难度(阅读难度),那么可以采用多层继承(实现)方式来解决,这样即使反编译出来的代码,可读性太差,复用性太差了。Java数据加密:我们一般用校验性加密,常用的是MD5,优点是速度快,数据占用空间小。
4、如果只是为了使用和发布方便,不需要保护java代码,使用这些工具是很好的选择。
5、无法防止。.class文件的标准是公开的,无法防止别人反编译你的代码。你顶多可以用代码扰乱工具扰乱你的代码,这样反编译的代码就难以阅读。比如可以试试用proguard来扰乱(“加密”)和反扰乱(“解密”)你的代码。
Q5: java中的编译与反编译?
反编译做的就是编译的相反动作。举例来说,例如一个程序用C语言来写,写完之后要编译成CPU可以识别和运行的机器代码,也就是生成EXE程序。
这个文件位于\JDK\BIN\ 下面,经按说明使用后,感到失望,原来这个“反编译”仅可反编译出JAVA程序的数据区(定义)、若干方法和类的引用等。
可以用java反编译器,DJ_java_discompiler 打开下载好的DJ_java_discompiler 选择file,之后点击open。之后出现以下界面。这里我选择一个test.class文件。点击打开之后,出现以下反编译test.java后的界面。这个是test.java的文件。
例如,开发人员可以将关键的Java Class放在服务器端,客户端通过访问服务器的相关接口来获得服务,而不是直接访问Class文件。这样黑客就没有办法反编译Class文件。
jad是java的反编译工具,是命令行执行,反编译出来的源文件可读性较高。可惜用起来不太方便。
关于java代码无法反编译和为什么java无法编译的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。






