zoukankan      html  css  js  c++  java
  • java 反编译 android 反编译

    1. jad

    http://varaneckas.com/jad/jad158e.linux.intel.zip  下载jad,

    给jad运行权限 ,运行

    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:

    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个例子:

    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
    

     但是我执行第三个总是提示

    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

    使用:

    java -Xmx1430m -jar jeb.jar --automation --script=JEBDecompileAll.py classes.dex
    启动命令
    -Xmx 参数是指定java虚拟机进程内存上限的
    JEBDecompileAll.py 这个Python脚本里调用了jeb的api,反编译了所有的class文件
    
  • 相关阅读:
    Shiro自定义密码匹配认证
    logback 发送邮件和自定义发送邮件;java类发送邮件
    webVR全景图多种方案实现(pannellum,aframe,Krpano,three,jquery-vrview)
    前端接受后端文件流并下载的几种方法
    回流(reflow)与重绘(repaint)
    JS数组去重的几种常见方法
    React 生命周期
    浅谈React工作原理
    如何在Vue项目中使用vw实现移动端适配
    移动端web整理 移动端问题总结,移动web遇到的那些坑
  • 原文地址:https://www.cnblogs.com/maseng/p/4065853.html
Copyright © 2011-2022 走看看