明明maven clean install 都是可以的,但是idea启动 build时就是会出现`程序包 xxx 不存在`呢?
今天遇到了,整了好几个小时,搜索了很多相关的,结合自己的理解,终于搞明白了
首先说说idea的iml文件: idea会为项目中的每个maven模块生成一个iml文件,里面存放的比较重要的有该模块的依赖,依赖又分为两种,一个是第三方库,一个是项目内模块之间的依赖,如下图
出现 java: 程序包 xxx 不存在 的原因就是该模块的iml文件问题,可能是压根就没有生成iml文件,
或者iml文件没有正确生成,或者更新依赖后,刷新maven,iml文件还是没有变,可能都是idea莫名其妙的问题导致的, 手动生成一下就可以,执行命令 mvn idea:module ,
如果生成出来就是有问题,可能是项目中的有些依赖的scope不是compile ,反正去iml文件去看就是缺少这个依赖,实在不行手动加上去也行
解决问题后还可以测试一下,把iml的某个依赖注释掉,然后rebuild这个模块,是不是就出现了 java: 程序包 xxx 不存在
知其然还要知其所以然,故记录以帮助后来者