这个月接手了一个项目,系统从上线到到现在大概有好几年了,一直使用的增量部署。因为各种原因,SVN保存着的代码已经和生产环境的存在一定的差异了。在代码都丢失的情况下,如果贸然重新进行全量部署的话,谁都不知道哪些地方可能暴雷而直接导致生产故障。

为了弄清生产环境与本地的代码基准库有哪些差异,决定从生产环境把WAR包和本地的代码作对比。本文大概记录了一下,IDEA自带的反编译插件使用。

首先是启用这个插件:

  • 进入设置,找到插件(plugin)

  • 搜索Bytecode, 然后进行勾选

插件安装完成后,就可以直接打开编译后的class文件了,看效果,是不是非常Nice !

别急,这样只能一个个文件单独去看,效率是不是太低了。。。

下面介绍一种看起来逼格稍微高那么一丢丢的方式,使用终端批量反编译。

找到插件安装目录,可以直接IDEA安装目录下面找到

使用cmd终端(其它系统类似)直接用命令运行,完成。

java -cp "D:\app\IntelliJ IDEA 2020.2.1\plugins\java-decompiler\lib\java-decompiler.jar"  org.jetbrains.java.decompiler.main.decompiler.ConsoleDecompiler -dgs=true `需要进行反编译项目目录` target 

class反编译_IDEA反编译功能小试牛刀相关推荐

  1. 《编译与反编译技术实战 》一2.3 编译器的设计与实现概述

    本节书摘来自华章出版社<编译与反编译技术实战 >一书中的第2章,第2.3节,庞建民 主编 ,刘晓楠 陶红伟 岳 峰 戴超 编著,更多章节内容可以访问云栖社区"华章计算机" ...

  2. 《编译与反编译技术实战》——2.1节编译器、解释器及其工作方式

    本节书摘来自华章社区<编译与反编译技术实战>一书中的第2章,第2.1节编译器.解释器及其工作方式,作者刘晓楠 陶红伟 岳 峰 戴超,更多章节内容可以访问云栖社区"华章社区&quo ...

  3. 《编译与反编译技术》——第一章 引论 1.1节编译器与解释器

    本节书摘来自华章出版社<编译与反编译技术>一书中的第1章,第1.1节,作者庞建民,陶红伟,刘晓楠,岳峰.更多章节内容可以访问云栖社区"华章计算机"公众号查看. 人类之间 ...

  4. Java——编译与反编译

    ** 一.基础知识 ** 1.1 编程语言 在介绍编译和反编译之前,我们先来简单介绍下编程语言(Programming Language).编程语言(Programming Language)分为低级 ...

  5. Java代码的编译与反编译那些事儿

    GitHub 2.5k Star 的Java工程师成神之路 ,不来了解一下吗? GitHub 2.5k Star 的Java工程师成神之路 ,真的不来了解一下吗? GitHub 2.5k Star 的 ...

  6. Java基础04 编译与反编译

    1. 编译 编译: 把所写的高级语言所写作的源代码程序,转换成计算机能直接识别.执行的低级语言的程序,也就是可执行文件. Java语言的编译: Java语言作为一种高级语言,想要被执行就要通过编译将其 ...

  7. 《编译与反编译技术实战》——导读

    前 言 "编译技术"是从事软件开发和信息安全相关工作的技术人员必须掌握的基础性技术,也是高等院校计算机科学与技术和软件专业的一门必修专业课,这是理论与实践结合非常强的领域,对提升开 ...

  8. .net 编译、反编译、查壳、脱壳、反混淆工具

    https://tools.pediy.com/win/dotnet.htm .NET Reflector & Reflexil 反编译工具,支持修改il代码 ILSpy 反编译工具,支持调试 ...

  9. 《编译与反编译技术实战》——1.2 词法分析生成器LEX

    本节书摘来自华章计算机<编译与反编译技术实战>一书中的第1章,第1.2节,作者 刘晓楠 陶红伟 岳峰 戴超,更多章节内容可以访问云栖社区"华章计算机"公众号查看. 1. ...

最新文章

  1. 第一次软件工程作业(改进版)
  2. 中国国际消费电子博览会拥抱转型,全新面貌拭目以待!
  3. 我还没考试,算法就说我的物理一定挂科
  4. 军队计算机技术职称考试 类别,军队人员参加计算机考试科目设置和报考规定...
  5. HDU 1054 Strategic Game 最小点覆盖
  6. java 无法找到ant_Java-Ant需要tools.jar并且无法找到我
  7. LeetCode 1737. 满足三条件之一需改变的最少字符数(计数)
  8. 朵朵糖故事机器人怎么更新_“故事贩卖机”专栏创始人温酒的新作,奇幻世界的暖心物语很治愈...
  9. 这可不是一般的便宜哦!
  10. fiddler 抓取 安卓模拟器 https包
  11. Unity3D之NGUI基础6:UIButton按钮
  12. javascript数字补零
  13. 神经网络学习的几种方法
  14. Qt 控件添加右键菜单
  15. oracle官文查看参数介绍的路径
  16. Android studio虚拟器突然黑屏解决办法
  17. 力扣739:每日温度【C++】
  18. Centos7防火墙与IPTABLES详解
  19. Linux 误删文件恢复命令及方法!
  20. h5 ios中软键盘弹起后 fixed定位失效

热门文章

  1. Service Worker的基本使用
  2. 解决redis启动时的警告
  3. 中国顶级互联网公司的技术组织架构调整预示着什么?【强烈推荐行业人士阅读】
  4. 大剑无锋之素数【面试推荐】
  5. 浅析HDFS的副本存放策略
  6. leetcode 638. Shopping Offers | 638. 大礼包(动态规划,多约束背包问题)
  7. 【Redis】CentOS7下redis的安装+supervisor管理+允许远程访问+测试部署效果
  8. 【CentOS7配置】如何设置:启动后自动获取网络连接、配置固定IP
  9. 测试C语言malloc申请内存不释放结果
  10. Flume学习笔记(一)安装与简单使用