非maven项目idea 反编译.class文件时, 选择源后怎么更改源

maven项目想更改源码用,只能将jar包安装到本地库 直接能看到
非maven项目idea 反编译.class文件时, 选择源后怎么更改源_第1张图片

一个蛋疼的实验: idea中class文件选择源,会对反编译的.class文件产生影响!!???

以spring的jdbc的jar包为例

随便点开个类

会有选择源的提示
非maven项目idea 反编译.class文件时, 选择源后怎么更改源_第2张图片
选择完源后,会加载注释什么的
非maven项目idea 反编译.class文件时, 选择源后怎么更改源_第3张图片

修改源码

GitHub已死
从gitee下载spring源码, 修改jdbc的源码
非maven项目idea 反编译.class文件时, 选择源后怎么更改源_第4张图片

不要纠结行数, 有注释什么的 肯定对不上(换自己编译的源可以)
gridle编译
非maven项目idea 反编译.class文件时, 选择源后怎么更改源_第5张图片

源码三巨头

jar包
源码
接口文档

非maven项目idea 反编译.class文件时, 选择源后怎么更改源_第6张图片

接下来更改项目引用的包

我的没用maven 直接更换
在这里插入图片描述
有变化,成功替换
自信的打开刚才的文件
非maven项目idea 反编译.class文件时, 选择源后怎么更改源_第7张图片
发现没有 System.out.println("SQL>>" + sql);
反编译软件查看
非maven项目idea 反编译.class文件时, 选择源后怎么更改源_第8张图片

重新加载
重新从磁盘加载
关了idea重新打开
重启电脑重新打开

好吧 当时确实懵逼了ヾ(≧▽≦*)o

隔了两天 突然灵光一闪 idea选择源码后,是不是会替换反编译的class?

水了这么多 到重点了

idea反编译的.class文件怎么更改源码呢?
百度无果-自己摸索
非maven版 找到依赖包点编辑
非maven项目idea 反编译.class文件时, 选择源后怎么更改源_第9张图片

找到源码引用

明显看到源码jar
就是它干的
凎凎凎凎凎凎凎凎凎凎凎凎凎凎凎凎凎凎凎凎凎凎凎凎凎凎凎凎凎凎
非maven项目idea 反编译.class文件时, 选择源后怎么更改源_第10张图片
果断删除
注释没了,好多空行应该是idea反编译规则(挺好)
非maven项目idea 反编译.class文件时, 选择源后怎么更改源_第11张图片

使用自己的源码

选择源 - 刚才spring源码编译后的libs文件夹下
非maven项目idea 反编译.class文件时, 选择源后怎么更改源_第12张图片
和源码一模一样了
非maven项目idea 反编译.class文件时, 选择源后怎么更改源_第13张图片

今天中午的大米真香

本例中用到的源码
或直接拉取https://gitee.com/zhugeyanchang/Spring-Framework.git
注意这个文件就OK
在这里插入图片描述

你可能感兴趣的:(技巧分享,java,spring,4,idea)