Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Java 反编译

Java 反编译

作者头像
一猿小讲
发布于 2019-10-21 07:35:31
发布于 2019-10-21 07:35:31
3.1K00
代码可运行
举报
文章被收录于专栏:一猿小讲一猿小讲
运行总次数:0
代码可运行

To copy others is necessary, but to copy oneself is pathetic.【模仿别人是必要的,但重复自己是可悲的】——毕加索。

艺术家如此,在程序猿前进的道路上,又何尝不是如此呢?模仿写代码必然是头等大事,因为俗话说天下代码一大抄。但是有些场景下你拿到都是 JAR 包,而并非源码,咋办?

另外,在项目对接过程中,你有没有经历过外部门或者其它公司给你一个对接的 SDK,但是有没有一丝好奇就想知道 SDK 里面写的啥?到底该怎么窥探?

好了,任何困难都阻挡不了程序猿前进的脚步,任何问题都扑灭不了程序猿好奇的火苗。接下来就就一起聊聊 Java 反编译相关的知识。

大家都知道,将源文件转换成二进制执行代码的过程叫“编译”,比如将 Java 源代码编译成 JAR 可执行文件;那么把二进制执行文件转换成源文件的过程就叫“反编译”,比如将 JAR 反编译成源文件。

那么 Java 平台下有没有开源的轮子,可以让反编译这件事情变得简单呢?

那是当然,这样的轮子一箩筐。Java 平台下有Jad、Jode、Java Decompiler(JD-GUI)等反编译利器,编程这些年,几乎都用过,但是目前电脑上只有 Java Decompiler(JD-GUI)这一款在用,之前分享的很多关于源码的文章,这个工具立下了汗马功劳。

1. 工欲善其事必先利其器

Java Decompiler (JD-GUI)目前最新版本为1.6.3,并且提供 WindowsLinux 和苹果 Mac Os 三个平台的可执行版本。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
http://java-decompiler.github.io/#jd-gui-download

只需选择适合你的那一款。

2. 工具而已,用就行啦

完成下载,安装完毕后,一杯热腾腾的咖啡呈现在你面前,让你垂涎欲滴、跃跃欲试。

还记得《爱情36技之暗送秋波的技术》文章中为 Python 菇凉打造的一款实时监控的随身听设备 walkman.jar 吗?我们不妨用 JD-GUI 打开看看里面写的都是啥?

嗯,感觉反编译还可以,貌似效果也是那么回事儿!

3. 简单的工具,不多说

JD-GUI 支持泛型、enum 枚举类型和Annotation 的反编译;支持整个 JAR 文件的反编译,并且在反编译后的源代码可直接点击进行相关代码的跳转,说一千道一万,不妨自己试试看。

2 分钟系列平淡的分享到这就结束了, 主要解决网友提出的一个问题,希望对你也有点帮助吧。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-10-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 一猿小讲 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
有那些好用的java jar反编译工具:每个对应的优势劣势对比
在这篇技术博客中,跟随猫头虎博主的脚步,深入探索Java JAR文件反编译工具的神秘领域。无论你是编程新手还是资深开发者,本文都将带你了解如何逆向工程Java类文件,揭露其中的代码逻辑。通过本文,你将学会使用各种强大的反编译工具,包括CFR、Fernflower、Procyon和JD-GUI,它们各自的优势、劣势、下载方式和使用方法将一一展开。加入我们,发掘隐藏在JAR文件背后的秘密吧!本文包含关键词,如“Java反编译工具”、“CFR下载”、“Fernflower使用方法”等,旨在帮助你轻松找到本篇文章。
猫头虎
2024/04/07
4.1K0
【Android 安全】DEX 加密 ( 常用 Android 反编译工具 | apktool | dex2jar | enjarify | jd-gui | jadx )
学习 Android 安全 , 首先要了解常用的破解 Android 应用的方式 , 本篇博客中简单介绍了破解 Android 应用的
韩曙亮
2023/03/28
3.1K0
【Android 安全】DEX 加密 ( 常用 Android 反编译工具 | apktool | dex2jar | enjarify | jd-gui | jadx )
Java反编译工具JD-GUI以及Eclipse的反编译插件
总之,有时候我们想要阅读代码,但是只有jar包却没有源码,就需要用到反编译工具了。
雨临Lewis
2022/01/11
2.8K0
如何实现class文件的反编译:java-decompiler 反编译工具
😀 Java Decompiler 是Java反编译工具,可以对 Java 5 和更高版本的 class 文件进行反编译分析。
鳄鱼儿
2024/05/21
2.7K0
如何实现class文件的反编译:java-decompiler 反编译工具
2020年支持java8的Java反编译工具汇总
大多商业软件,会对程序进行加密、加壳等安全措施以防范软件被破解,从而使得反编译越来越难。反编译是一个对目标可执行程序进行逆向分析,从而得到源代码的过程。尤其是像Java这样的运行在虚拟机上的编程语言,更容易进行反编译得到源代码。
全栈程序员站长
2022/08/03
8280
2020年支持java8的Java反编译工具汇总
7款开源java反编译工具
今天我们要来分享一些关于Java的反编译工具,反编译听起来是一个非常高上大的技术词汇,通俗的说,反编译是一个对目标可执行程序进行逆向分析,从而得到原始代码的过程。尤其是像.NET、Java这样的运行在虚拟机上的编程语言,更容易进行反编译得到源代码。当然,也有一些商业软件,对其程序进行了混淆加密,这样我们就很难用工具反编译了。
斯文的程序
2019/11/07
5.7K0
爱情36技之暗送秋波的技术
这篇文章想分享已经很久了,苦于皱巴巴的技术比较生涩难懂,迟迟没有找到好的分享方式,今天结合爱情中暗送秋波的故事的形式,尝试分享一下。
一猿小讲
2019/08/16
4200
爱情36技之暗送秋波的技术
7款开源Java反编译工具
今天我们要来分享一些关于Java的反编译工具,反编译听起来是一个非常高上大的技术词汇,通俗的说,反编译是一个对目标可执行程序进行逆向分析,从而得到原始代码的过程。尤其是像.NET、Java这样的运行在虚拟机上的编程语言,更容易进行反编译得到源代码。当然,也有一些商业软件,对其程序进行了混淆加密,这样我们就很难用工具反编译了。
全栈程序员站长
2022/09/08
11.9K0
Java| 编译和反编译
本文主要介绍4个Java的反编译工具:javap、jad和cfr以及可视化反编译工具JD-GUI
全栈程序员站长
2022/06/28
2.7K0
Java| 编译和反编译
【小工具】反编译指南
相信在大学学习过编译原理这门课程的小伙伴都看过这段话,“编译的主要的目的是将便于人编写、阅读、维护的高级语言所写作的源代码程序,翻译为计算机能解读、运行的低级语言的程序,也就是可执行文件。那么反之,我们亦可以通过低级语言进行反向工程,获取其源代码。这个过程,就叫做反编译。”
用户9913368
2022/08/13
2.9K0
【小工具】反编译指南
JD-GUI 反编译工具:探索 Java 字节码的奇妙世界
在 Java 开发领域中,经常会遇到需要查看已编译的 Java 类文件的情况。然而,已编译的类文件通常以二进制形式存在,不可直接阅读和理解。幸运的是,有一款强大而易用的工具,它可以帮助我们将这些类文件转换为可读的 Java 源代码。它就是 JD-GUI(Java Decompiler GUI)。
高久峰
2023/06/29
1.9K0
java jdk 8反编译工具JD-GUI、procyon-decompiler、luyten、crf下载使用简介
如果版本>=1.8 ,可以使用 procyon-decompiler,不过是命令行界面
noteless
2019/03/29
4K0
java jdk 8反编译工具JD-GUI、procyon-decompiler、luyten、crf下载使用简介
Java Jar源码反编译工具对比
下载地址:https://github.com/deathmarine/Luyten
Erwin
2020/09/27
5.9K0
【Android 应用开发】 Android APK 反编译 混淆 反编译后重编译
反编译工具 : 总结了一下 linux, windows, mac 上的版本, 一起放到 CSDN 上下载;
韩曙亮
2023/03/27
1.1K0
【Android 应用开发】 Android APK 反编译 混淆 反编译后重编译
JD-GUI和JAD对War包和Jar包进行反编译教学
JD-GUI和JAD是两个用于反编译Java字节码的工具。它们通常在以下情况下使用:
绿毛龟
2024/01/19
4.1K0
JD-GUI和JAD对War包和Jar包进行反编译教学
App安全测试——Android APK反编译
我们下载到的Android App 安装包是 Apk文件(Android Application Package) 。通过 Apk 文件,我们也可以得到这个应用的代码和资源文件,对应用进行修改。
清风穆云
2021/08/09
1.8K0
(Mac)反编译Android APK详细操作指南[ApkTool,dex2jar,JD-GUI]
早在4年前我曾发表过一篇关于《Android开发之反编译与防止反编译》的文章,我在该文章中对如何在Windows平台反编译APK做了讲解,如今用Mac系统的同学越来越多,也有很多朋友问我能否出一篇关于
CrazyCodeBoy
2018/05/15
3.5K0
android反编译apk_apk反编译找不到
APKTool是GOOGLE提供的APK编译工具,需要JAVA运行环境,推荐使用JDK1.6或者JDK1.7。
全栈程序员站长
2022/10/01
1.5K0
常用安卓渗透测试中的一些工具
Apktool是最常用的一款安卓反编译工具。支持多平台,在Linux中我们可以用apt命令直接安装。
逍遥子大表哥
2023/05/09
8610
常用安卓渗透测试中的一些工具
Java 反编译工具的使用与对比分析
Java 反编译,一听可能觉得高深莫测,其实反编译并不是什么特别高级的操作,Java 对于 Class 字节码文件的生成有着严格的要求,如果你非常熟悉 Java 虚拟机规范,了解 Class 字节码文件中一些字节的作用,那么理解反编译的原理并不是什么问题。甚至像下面这样的 Class 文件你都能看懂一二。
未读代码
2021/06/21
2.2K0
Java 反编译工具的使用与对比分析
推荐阅读
相关推荐
有那些好用的java jar反编译工具:每个对应的优势劣势对比
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验