标签:
1. jad
http://varaneckas.com/jad/jad158e.linux.intel.zip 下载jad,
给jad运行权限 ,运行
1
2
|
chmod a + x . / jad . / jad |
缺点:不能反编译混淆过的,有很多文件反编译不成功
2. ded
http://siis.cse.psu.edu/ded/installation.html
3. jd-gui
都知道这个,直接反编译成java文件,但是没有命令行
4. jd-cmd
https://github.com/kwart/jd-cmd
其中需要安装maven:http://maven.apache.org/download.cgi
linux安装maven:
1
2
3
4
5
6
7
|
Extract the distribution archive, i.e. apache - maven - 3.2 . 3 - bin .tar.gz to the directory you wish to install Maven 3.2 . 3. These instructions assume you chose / usr / local / apache - maven. The subdirectory apache - maven - 3.2 . 3 will be created from the archive. In a command terminal, add the M2_HOME environment variable, e.g. export M2_HOME = / usr / local / apache - maven / apache - maven - 3.2 . 3. Add the M2 environment variable, e.g. export M2 = $M2_HOME / bin . Optional: Add the MAVEN_OPTS environment variable to specify JVM properties, e.g. export MAVEN_OPTS = "-Xms256m -Xmx512m" . This environment variable can be used to supply extra options to Maven. Add M2 environment variable to your path, e.g. export PATH = $M2:$PATH. Make sure that JAVA_HOME is set to the location of your JDK, e.g. export JAVA_HOME = / usr / java / jdk1. 7.0_51 and that $JAVA_HOME / bin is in your PATH environment variable. Run mvn - - version to verify that it is correctly installed. |
jd-cmd的使用:
程序本身给了3个例子:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
Examples: $ java - jar jd - cli.jar HelloWorld. class Shows decompiled class on a screen $ java - jar jd - cli.jar - - skipResources - n - g ALL app.jar Decompiles app.jar to app.src.jar; It doesn‘t copy resources to the output jar, the decompiled classes contain line numbers as comments and the jd - cli prints the most verbose debug information about decompilation $ java - jar jd - cli.jar myapp.jar - od decompiled - oc Decompiles content of myapp.jar to directory named ‘decompiled‘ and also on a screen |
但是我执行第三个总是提示
1
|
19 : 47 : 27.494 WARN jd.core.output.DirOutput - Class name or java source is null |
所以如果要反编译class文件,用第一个,要反编译jar中的所有文件,用第二个
5. jeb
商业版,据说功能很强大,有命令行和图形,但是收费,执行速度慢,耗内存
http://www.kanxue.com/bbs/showthread.php?p=1300282
使用:
1
2
3
4
|
java - Xmx1430m - jar jeb.jar - - automation - - script = JEBDecompileAll.py classes.dex 启动命令 - Xmx 参数是指定java虚拟机进程内存上限的 JEBDecompileAll.py 这个Python脚本里调用了jeb的api,反编译了所有的 class 文件 |
标签:
原文地址:http://www.cnblogs.com/SZLLQ2000/p/5484590.html