导航:首页 > 源码编译 > 在线java反编译

在线java反编译

发布时间:2022-02-08 20:26:34

1. 有没有比较完美的java编译方法

1、Java反编译插件 —— Jadclipse JadClipse是Jad的Eclipse插件,是一款非常实用而且方便地Java反编译插件,我们只需将下载的插件包复制到eclipse的plugins目录下,然后修改window -> Preferences -> Java -> JadClipse

2. 怎么用java自带反编译工具查看java字节码文件

首先,写一个最简单的程序,我们从最简单入手,相信大家1秒就可以看懂了吧
然后,经过编译生成HelloWorld.class文件,对,我们就去看HelloWorld.class里面的java字节码,到底是什么。
输入下图所示的命令,javap -verbose HellloWorld.class 回车
详细代码,如下,没学过编译原理的,建议去学下,去学下编译原理,经常看看,就能看懂了,我和大家都是一样,我也是一名,计算机爱好者,没事,喜欢瞎鼓弄。今天就到这了。怎么用java自带反编译工具查看java字节码文件!

3. Java反编译代码解释:

首先,mecuryhope所回答的,仅仅是java层面的东西,但是却不了解反编译的过程。
其次,label175和break这些,并不是java代码,而是反编译的工具无法真实还原导致的。

label175是一个标签,而break label175是表示跳转到label175这里。

4. JAVA反编译软件

由于JAVA语言安全性高、代码优化、跨平台等特性,从1995年5月由SUN公司发布后,迅速取代了很多传统高级语言,占据了企业级网络应用开发等诸多领域的霸主地位。 不过,JAVA最突出的跨平台优势使得它不能被编译成本地代码,而要以中间代码的形式运行在虚拟机环境中,这使得JAVA的反编译要比别的高级语言容易实现,并且反编译的代码经过优化后几乎可以与源代码相媲美。 为了更好地保护知识产权,避免本公司的智力成果轻易被人窃取,开发者有必要对反编译工具深入了解,以便有针对性地采取保护措施。 目前,比较流行的JAVA反编译工具有近30种,其中有三款堪称精品: 一、 应用广泛的JAD 在众多的JAVA反编译工具中,有几种非常着名的工具使用了相同的核心引擎——JAD,其中主要包括:Front End Plus、mDeJava、Decafe Pro、Cavaj Java Decompiler、DJ Java Decompiler、NMI’s Java Class Viewer和国产的JAVA源代码反编译专家。 JAD本身是一个命令行工具,没有图形界面,上述的这些工具大多是在JAD内核的基础之上加了一个图形界面而已。这么多种产品的共同选择,足可证明JAD在JAVA反编译领域中的尊贵地位。 JAD是使用Microsoft Visual C++开发的,运行速度非常快,可以处理很复杂的JAVA编译文件。众多的参数使JAD可以灵活应付多种加密手段,令反编译的代码更加优化和易读。由于JAD参数太多,没必要一一解释,其中有几个最常用的如下(以JAD 1.5.8f版本为例): -d - 用于指定输出文件的目录 -s - 输出文件扩展名(默认为: .jad),通常都会把输出文件扩展名直接指定为.java,以方便修改的重新编译。 -8 - 将Unicode字符转换为ANSI字符串,如果输出字符串是中文的话一定要加上这个参数才能正确显示。 最常用的反编译指令如下所示: Jad –d c:\javasource –s .java -8 javatest.class 这条指令将当前目录下的javatest.class反编译为javatest.java并保存在c:\javasource目录里,其中的提示输出为中文,而不是Unicode代码。 二、 源码开放的JODE JODE是全球最大的开源项目网站Sourceforge.net的成员,在所有的JAVA反编译器中,JODE的反编译效果是最好的,尤其是对付一些常见的加密手段,例如混淆技术等,更是出类拔粹。 JODE本身也是纯JAVA开发的,最近越来越多的JAVA反编译软件也选择JODE来做它们的核心引擎,例如JCavaj Java Decompiler、BTJ (Back To Java)、jEdit’s JavaInsight plugin等。 JODE是一个可运行的JAR文件,在windows环境下双击即可运行。 需要特别说明的是,JODE不是通过常规的Open->File的方式来加载JAVA编译后的类文件(*.class)或是类包(*.jar)的, 而是通过在Options菜单中的Set Classpath来实现的,单独的类文件可以将它的上一级目录作为Classpath输入,然后再选择Reload Classpath即可。 新加入的类包或是类的名字会在左侧窗口出现,双击类包名可以展开目录树结构,双击需要反编译的类名则在右上角的窗口中直接显示反编译后的源代码。 三、 独树一帜的DAVA DAVA不是一个独立的JAVA反编译器,而是JAVA代码优化工具Soot的一部分。Soot和JODE一样是纯JAVA开发的,也是一个独立的JAR包,但却不能通过双击直接运行,而是象JAD一样在命令行状态运行。 Soot对环境变量的配置要求非常严格,通常情况下要对CLASSPATH做如下设置: Set CLASSPATH=%CLASSPATH%;c:\sootdir\sootclasses-2.1.0.jar;.; 其中的c:\sootdi

5. 如何将java中的.class文件反编译

安装Java jdk后
看安装目录里有没有jad.exe,没有要下载,一般都有的
配置Java环境变量
开始-运行-cmd-回车-进入命令行窗口:
cd+空格+class文件所在路径:
按下面的命令进行反编译:
例如:[2] jad -sjava example.class 回车
在目录里可以看到example.java源文件

[1] 反编译一个class文件:jad example.class,会生成example.jad,用文本编辑器打开就是java源代码
[2] 指定生成源代码的后缀名:jad -sjava example.class,生成example.java
[3] 改变生成的源代码的名称,可以先使用-p将反编译后的源代码输出到控制台窗口,然后使用重定向,输出到文件:jad -p example.class > myexample.java
[4] 把源代码文件输出到指定的目录:jad -dnewdir -sjava example.class,在newdir目录下生成example.java
[5] 把packages目录下的class文件全部反编译:jad -sjava packages/*.class
[6] 把packages目录以及子目录下的文件全部反编译:jad -sjava packages/**/*.class,不过你仍然会发现所有的源代码文件被放到了同一个文件中,没有按照class文件的包路径建立起路径
[7] 把packages目录以及子目录下的文件全部反编译并建立和java包一致的文件夹路径,可以使用-r命令:jad -r -sjava packages/**/*.class
[8] 当重复使用命令反编译时,Jad会提示“whether you want to overwrite it or not”,使用-o可以强制覆盖旧文件

[9] 还有其他的参数可以设置生成的源代码的格式,可以输入jad命令查看帮助,这里有个人做了简单的翻译:jad命令总结
[10] 当然,你会发现有些源文件头部有些注释信息,不用找了,jad没有参数可以去掉它,用别的办法吧。

6. java反编译

如今JAVA语言在全世界范围正如火如荼般的流行,它广范地应用在INTERNET的数据库、多媒体、CGI、及动态网页的制作方面。1999年在美国对JAVA程序员的需求量首次超过C++!

作者因最近分析一些JAVA程序,对JAVA的反编译进行了一番了解,下面将我所了解的情况作以下介绍,希望对JAVA爱好者有所帮助。

JAVA是采用一种称做“字节编码”的程序结构,分为小程序(嵌入到HTML文件中)和应用程序(直接在命令状态下执行)两种类型。无论哪种结构,一旦用JAVAC 命令编译后,均变成后缀为CLASS的同名可执行文件。这种文件是不可阅读的代码。

经查阅了SUN公司的JDK(JDK1.1.3)文档资料后,我找到了一个据称是可反编译JAVA的JAVAP文件(EXE),这个文件位于\JDK\BIN\ 下面,经按说明使用后,感到失望,原来这个“反编译”仅可反编译出JAVA程序的数据区(定义)、若干方法和类的引用等。

这里我用了一个简单例子来说明问题。

JAVA的源程序hello_java.java如下:

import java.applet.*;
import java.awt.*;
public class hello_java extends Applet
{
public void paint(Graphics g)
{
g.drawString("Hello Java!\n",20,20);
}
}

经用反编译命令:javap -c -package -public -private hello_java hello.java

得到的反编译结果(hello.java)如下:(有关javap命令的选择参数请见其使用说明,这里-c表示选择了反编译)

Compiled from hello_java.java
public synchronized class hello_java extends java.applet.Applet
/* ACC_SUPER bit set */
{
public void paint(java.awt.Graphics);
public hello_java();
Method void paint(java.awt.Graphics)
0 aload_1
1 ldc #1
3 bipush 20
5 bipush 20
7 invokevirtual #6
10 return
Method hello_java()
0 aload_0
1 invokespecial #5 ()V>
4 return
}

7. 最好的java反编译工具是哪个

jd-gui 是Java反编译中比较好用的一个工具,用法如下:

  1. 下载jd-gui

  2. 双击打开jd-gui.exe

  3. 单击左上角的File--->Open File

  4. 找到需要反编译的.class文件 打开即可

8. java类反编译

额..那源代码改一下.然后编译覆盖不就得了.还反编译.然后再编译...唉.坐等高人...

9. JAVA反编译问题

这个是反编译后计算完的结果
那些while(true)
都是一部分的表达,反编译工具不好吧 换一个事实
能跑起来是因为class里面没问题
就跟你VS里附加调试似的 dll是对的 但是你的code sourse 是不对的一样

10. Java反编译工具哪个好

java反编译工具有如下两种:

1.jd-gui.exe反编译最方便,界面如下:

2.XJad.exe反编译最精确

阅读全文

与在线java反编译相关的资料

热点内容
travelboast安卓怎么设置路线 浏览:51
播放解压的图 浏览:228
新建一个名为hux的文件夹 浏览:532
桥水基金加密货币 浏览:196
还有什么好app 浏览:152
微软最惨的源码 浏览:40
上海灵意压缩机 浏览:415
泰拉瑞亚2020最新服务器ip地址 浏览:563
安卓机玩吃鸡什么画质 浏览:873
徒步缓解压力的视频 浏览:238
图像算法口诀 浏览:860
人踩什么解压 浏览:921
php语法检查命令 浏览:330
如何重设服务器网关 浏览:865
世界经济pdf 浏览:110
异或算法找缺失的数 浏览:327
单片机flagt1 浏览:487
单片机清理 浏览:660
东风景逸空调压缩机 浏览:158
天津程序员炒股 浏览:230