一文搞定 JAR 包源码查看:5 种主流方法 + 示例(2024 最新版)

一文搞定 JAR 包源码查看:5 种主流方法 + 示例(2024 最新版)

引言

开发 Java 项目时,我们经常需要查看 JAR 包的源代码 —— 无论是调试依赖问题、学习框架实现,还是理解第三方库逻辑。但 JAR 包本质是.class文件的压缩包,直接打开是字节码。本文整理了5 种当前最流行的源码查看方案,覆盖 Maven 项目、非 Maven 项目、主流 IDE(IDEA/Eclipse)等场景,附详细操作示例,零基础也能快速上手!

一、Maven 项目:自动下载源码(开发首选)

Maven 项目通过pom.xml管理依赖,IDE 可直接关联官方源码,无需反编译,最推荐!

适用场景

项目使用 Maven/Gradle 管理依赖(如 Spring Boot、MyBatis 等框架项目)。

操作步骤(以 IntelliJ IDEA 为例)

自动下载源码(推荐配置)

打开 IDEA,进入File > Settings > Build, Execution, Deployment > Build Tools > Maven。勾选Download sources(自动下载源码)和Download documentation(可选,下载 API 文档)。点击OK保存,后续 Maven 拉取依赖时会自动下载源码。 示意图:Maven 自动下载源码配置

手动下载源码(未自动下载时)

在Project面板中,找到External Libraries目录下的目标 JAR 包(如spring-context-6.1.3.jar)。右键点击 JAR 包,选择Download Sources(或快捷键Ctrl+Shift+A搜索 “Download Sources”)。等待下载完成后,双击 JAR 包中的.class文件(如ApplicationContext.class),IDEA 会自动跳转到源码界面。

二、非 Maven 项目:JD-GUI 图形化反编译(零基础友好)

JD-GUI 是一款免费、无需安装的图形化反编译工具,直接拖拽 JAR 包即可查看源码,适合快速验证或非 IDE 场景。

操作步骤

下载 JD-GUI 访问官方 GitHub,下载对应系统的版本(如 Windows 选jd-gui-1.6.6.exe)。

查看 JAR 源码

双击启动 JD-GUI,界面如下: 示意图:JD-GUI 主界面将目标 JAR 包(如hutool-all-5.8.16.jar)直接拖入窗口,左侧会显示包结构,右侧自动反编译出源码。若需保存源码,点击File > Save All Sources,会生成与 JAR 包结构一致的.java文件目录。

三、Eclipse 项目:Class Decompiler 插件(老用户适配)

Eclipse 新版支持通过插件集成反编译功能,无需手动配置 Jad,兼容 Java 8~17。

操作步骤

安装插件

打开 Eclipse,进入Help > Eclipse Marketplace。搜索Eclipse Class Decompiler,点击Install完成安装(需重启 Eclipse)。 配置默认反编译器

进入Window > Preferences > General > Editors > File Associations。选择.class without source类型,点击Add...,选择Eclipse Class Decompiler作为默认编辑器。 查看源码

在Package Explorer中找到目标 JAR 包(如log4j-core-2.20.0.jar)。展开 JAR 包,双击.class文件(如Logger.class),Eclipse 会自动反编译并显示源码。

四、IDEA 内置反编译(无需插件,高效便捷)

IntelliJ IDEA 内置了高性能的反编译器,无需额外工具,直接查看 JAR 源码。

操作步骤

直接打开 JAR 包

在 IDEA 中,通过File > Open选择目标 JAR 包(或直接拖拽到项目窗口)。IDEA 会以 “JAR 包资源管理器” 形式打开,左侧显示包结构,右侧自动反编译.class文件。 查看混淆后的源码(可选) 若 JAR 包经过混淆(如变量名变为a/b/c),可安装Bytecode Viewer插件增强反编译效果:

进入File > Settings > Plugins,搜索Bytecode Viewer并安装。右键.class文件,选择View Bytecode或Decompile,可查看更接近原始代码的反编译结果。

五、命令行工具:Procyon(极客向)

若需批量反编译或集成到脚本中,可使用命令行工具Procyon,支持 Java 7~17 字节码。

操作步骤

安装 Procyon

下载procyon-decompiler-0.6.0.jar(官网下载)。配置环境变量:将 JAR 路径添加到PATH,或通过java -jar执行。 反编译 JAR 包 执行以下命令,将 JAR 包反编译到output目录:

bash

java -jar procyon-decompiler-0.6.0.jar -o output my-library.jar

输出结果示例:

plaintext

Decompiled 123 classes (100%)

Output written to: /path/to/output

注意事项(重要!)

法律风险:反编译受版权保护的 JAR 包(如商业闭源库)可能违反《计算机软件保护条例》,仅建议用于学习或开源项目。源码完整性:反编译结果可能与原始代码有差异(如 Lambda 表达式、局部变量名丢失),仅供参考。工具兼容性:优先选择 JD-GUI、IDEA 内置反编译器等现代工具,旧工具(如 Jad)可能不支持 Java 11+。

总结

本文覆盖了Maven 自动下载、JD-GUI 图形化、IDE 内置反编译、命令行工具等 5 种主流方案,可根据场景选择:

开发中优先用 Maven/IDEA 自动关联源码(高效);临时查看用 JD-GUI(无需安装);批量处理用 Procyon(脚本集成)。

相关养生推荐

电信卡突然没信号无服务了?别急,原因和解决方法都在这!
汽车下载软件去哪下载
365官网登录

汽车下载软件去哪下载

📅 07-11 👁️ 2000
为什么中国没有出现苹果?核心差异在这一点 在中国,最想成为 苹果 的可能就是 小米 ,因为他一直欣赏乔布斯、推崇苹果模式,但小米始终没能成为“中国苹果”,核心问题...