今天在IDEA中想要阅读源码的时候发现自己点击导入包的类时看到的是.class文件反编译过来的代码,并没有注释,花了一段时间,解决了问题。

注意,在这里我针对的是Maven项目下的处理方式,但是手动导入jar包的原理应该是一样的,如果不是Maven项目的博友,可以从本文提出方向去思考一下。

问题图片

在这里插入图片描述照理来说,选择了正确的jar包文件,就会显示出源码文件(即.java文件)

点击之后出现:

在这里插入图片描述说明jar包文件中并不包含源码文件,而是只有.class文件。

所以,问题转换:应该去下载包含源码和文档的jar包,并且导入依赖。

问题解决

1、 进入Setting

在这里插入图片描述

2、进入Maven设置页面,勾选下面3项。

在这里插入图片描述
这样保证以后的Maven都会自动下载上述三种文档,那如果已经之前下载过的如何下载呢?

3、在IDEA右边侧栏中点击Maven框,选择jar包进行下载

在这里插入图片描述

问题解决…?

正常情况下,应该都可以解决问题。
在这里插入图片描述
但是博主在这个地方仍然出现了一些问题:

问题1、点击下载按钮后,完全没有发生变化,打开依旧是.class文件

可以考虑的方向:是否是jar包的版本太老,Maven线上仓库已经没有对应版本的下载,因此点击按钮后也会提示下载失败,下载失败,理所当然的就是没有变化。

问题2、点击下载按钮后,部分代码有注释,部分代码还是.class文件

可以考虑的方向:还是应该考虑版本的问题,有可能是选择的版本太新,导致部分类没有对应的源码和文档,可以试一下降版本。

一言以蔽之,如果你的想要查看源码的时候,只显示出了反编译后的.class文件,需要检查以下几点:

  • jar包中是否包含源码和文档(这个可以自己解压看一下就知道了,如果有的话,一般是会有文件名包含doc或source的词缀)
  • jar包是否版本过老
  • jar包是否版本过新
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐