IDEA中某个类显示红线,Cannot resolve symbol问题

接手了一个项目
里面依赖版本有点乱
同一个jar包有很多依赖版本
一个工程里,依赖的某个jar的版本已经写死,
是1.22
用maven helper查看也是1.22
但是在java文件中,某个类显示不可以解析
譬如全限定名是 com.test.Apple
依赖包是com.test.fruit:collect-1.22
Apple在IDEA中显示是红的
点击test,展开左端依赖显示依赖的是 com.test.fruit:collect-1.23

进入.m2/repository中,找到相应文件夹

发现有1.23版本的文件夹,但是没有1.22的
强制下载了1.22版本
IDEA中这个类依然显示红线,Cannot resolve symbol

但是package打包没问题
同事的IDEA中也没问题
怎么回事?

阅读 4.5k
2 个回答

打包的时候是不是从远程拉的依赖包

不一定有用哈,只是分享哈我无脑的检查方式━━( ̄ー ̄*

package都可以,那说明起码pom的配置基本没问题,所以检查一些idea的配置项

我一般是先检查一下File -> Project Structure每一项,起码sdk配置要有噻,sdklanguage level要匹配噻,包括右边的一些设置的tab页都检查一下,有没有标红的,看看是不是问题,尤其是里面的Libraries

上面都没有问题,然后再就是mvn clean,之后reimport一下,看看这个时候还报错不?

如果还有问题。。因为别的同事没问题,那多半就是你的idea设置问题,所以上面都检查了还不行,那最后一招,关闭idea 重新打开一次(所有工程都关了,完全关完,再重新打开)

如果还不行。。。emmm,究极一招,既然同事可以,让他push到你们的代码仓库,你重新拉下来放到一个新的位置(和你之前报错原工程不一样的位置),模拟一下同事的操作,这下应该是可以了,真还不行,那就没办法了。。。毕竟没有代码,这个我们不太好调(゚ー゚)

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题