Intellij IDEA 2018快速查看Java类的.class文件

      学习JVM时,难免要对class文件进行研究.Oracle为我们提供了专门分析Class文件字节码的工具:javap,因此我们只需把该工具集成到我们的IDEA中就可以查看class文件,并将内容打印在IDE的console中查看。

配置步骤如下:

1、打开IDEA,找到setting——>Tools——>External Tools点击添加

 

各个参数的添加如下:

Name:此参数就是个标识,可以随便填

Program:此处填写JDK中javap.exe的位置(图一是找到jdk的位置,也可以直接图二)

Arguments:-c $FileClass$ 表示反编译的class文件

最后Working Dicetory:$OutputPath$,其中Output Path为IntelliJ默认的编译文件所存放的路径

也可在IDEA中查看 

最后随便找个类,右击找到External Tools-你取的名字

显示反编译后的class文件

 

大功告成

JVM字符集含义:https://blog.csdn.net/qq_41618510/article/details/84667848 

 

<think>好的,我现在需要帮助用户在IntelliJ IDEA中反编译.class文件。根据用户提供的引用内容,我需要整理出具体的步骤,并确保回答符合用户的要求,比如使用中文、正确格式的LaTeX、生成相关问题等。 首先,我需要查看用户提供的引用内容,提取有用的信息。引用[2]提到了通过右键文件选择“Show in Explorer”找到class文件的位置,然后复制到项目文件夹中,再双击打开反编译后的文件。这可能涉及到将class文件放在正确的路径下,让IDEA能够识别并进行反编译。 引用[1]和[3]提到了使用java-decompiler.jar这个插件,通过命令行运行反编译。例如,用户需要执行似`java -cp "插件路径" org.jetbrains.java.decompiler.main.decompiler.ConsoleDecompiler`的命令,指定输入和输出路径。这可能是一个手动反编译的方法,适合处理单独的jar文件。 引用[4]提到了使用javap命令将.class文件反编译并输出到txt文件,例如`javap -v -p Man.class > demo.txt`。这可能是一个更基础的方法,但用户可能更倾向于使用IDEA内置的功能,而不是命令行工具。 引用[5]提到了在模块依赖中添加Tomcat源代码路径来解决无法绑定源文件的问题。这可能是在处理特定项目时需要的步骤,比如当反编译的属于某个外部库时,需要正确配置依赖关系。 接下来,我需要将这些信息整合成用户友好的步骤。首先,使用IDEA内置的反编译功能,直接双击.class文件即可,但有时候可能需要安装或启用Java Decompiler插件。如果内置功能不可用,可能需要手动操作,比如复制class文件到项目目录或使用命令行工具。 需要注意用户可能遇到的问题,比如反编译后无法查看源代码,这时候可能需要检查插件是否安装正确,或者项目的依赖配置是否正确,如引用[5]所述。此外,处理外部jar文件可能需要使用命令行工具,如引用[1]和[3]中的方法。 最后,生成相关问题时要考虑用户可能进一步想了解的内容,比如如何反编译整个jar,或者解决反编译时遇到的常见错误。确保问题覆盖不同的使用场景和潜在问题。</think>### 如何在 IntelliJ IDEA 中反编译 .class 文件? #### 方法 1:通过 IDEA 内置功能直接反编译 1. **定位 .class 文件** 在项目中找到需要反编译的 `.class` 文件(例如通过右键文件选择 `Show in Explorer` 定位路径)[^2]。 2. **双击打开文件** 双击目标 `.class` 文件IDEA 会自动调用内置的 **Java Decompiler** 插件显示反编译后的代码[^2]。 若文件图标显示为 `01` 且后缀为 `.class`,说明已成功反编译。 #### 方法 2:手动复制 .class 文件到项目目录 1. **复制文件到源码目录** 将需要反编译的 `.class` 文件复制到项目对应的源码文件夹中(例如 `src/main/java`)。 2. **刷新并查看** 在 IDEA 中刷新项目目录,双击打开 `.class` 文件即可查看反编译后的内容[^2]。 #### 方法 3:使用命令行工具(适用于 JAR 文件) 1. **通过插件路径执行反编译** 使用 `java -cp` 命令调用 IDEA 的 `java-decompiler.jar`,例如: ```bash java -cp "D:\路径\java-decompiler.jar" org.jetbrains.java.decompiler.main.decompiler.ConsoleDecompiler -dgs=true 输入.jar 输出路径/ ``` 此命令会将 `输入.jar` 反编译到指定目录[^1][^3]。 2. **查看反编译结果** 反编译后的文件会生成在输出路径中,可直接用 IDEA 打开。 #### 常见问题解决 - **无法绑定源代码** 在 `Project Structure` → `Modules` → `Dependencies` 中添加外部库的源代码路径(如 Tomcat 源码路径)[^5]。 - **反编译内容不完整** 使用 `javap` 命令导出详细字节码: ```bash javap -v -p Man.class > demo.txt ``` 生成 `demo.txt` 文件查看完整信息[^4]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值