今天遇到一个神奇BUG,一个和elasticsearch没有任何关系的项目,报错ES某个包找不到,刚开始觉得是依赖了父项目的某个包,而且本项目主启动类ComponentScan扫描了相关的类进入Spring容器中,但是不管怎么找都没有找到任何和ES相关的类,过了一段时间,开始思考是否是target下的class文件有什么问题,一点吓一跳,config包下居然有一个我彻底不知道的class文件ESconfig.class(这个项目是我后来接手的),删除掉i该文件,项目启动成功。elasticsearch
反思:在IDEA中,若是中途导入一个项目,该项目的src下的文件和class下的文件不一致,则颇有可能在后续开发中src源文件跟class编译文件不一致。最好在接手的时候,就清除掉target文件,从新编译生成新的class文件开发