对于不同的库和不同的项目,这个问题会间歇性地发生。 当尝试导入库时,包将被识别,但无法解析类名。
如果在import语句中,我右键单击-> Goto ->包的声明,我看到所有反编译的类显示在侧窗格中——包括我需要的那些—— 如果我尝试自动完成import语句,我注意到我需要的类没有在下拉列表中显示。
我已经试过使缓存无效了,没用。我找不到任何类冲突——在我的类路径中没有其他具有相同包名的jar文件。 我能够将这个类导入到其他项目中。
请查看屏幕截图:
有人知道吗?
对于不同的库和不同的项目,这个问题会间歇性地发生。 当尝试导入库时,包将被识别,但无法解析类名。
如果在import语句中,我右键单击-> Goto ->包的声明,我看到所有反编译的类显示在侧窗格中——包括我需要的那些—— 如果我尝试自动完成import语句,我注意到我需要的类没有在下拉列表中显示。
我已经试过使缓存无效了,没用。我找不到任何类冲突——在我的类路径中没有其他具有相同包名的jar文件。 我能够将这个类导入到其他项目中。
请查看屏幕截图:
有人知道吗?
当前回答
此外,检查您的类是否在编译排除项中
如果您看到左上角有一个灰色的小叉,您必须从编译排除中删除类
如何去除
其他回答
您可以尝试使缓存无效并重新启动IntelliJ,在许多情况下这将有所帮助。
File ->使缓存失效/重新启动
简单的重启对我很有效。
我建议首先尝试重新启动,然后您可以选择使缓存无效。
PS:清除系统缓存会导致清除本地历史记录。
我有同样的问题,原因是不正确的标记项目的来源。
我手动创建了根内容,没有注意到src/main/test文件夹被标记为“源”而不是“测试”。这就是为什么我的测试类假定它们所有的测试库(JUnit、Mockito等)的范围都是Compile,而不是test。
当我将src/main/test标记为Tests并重新构建模块时,所有错误都消失了。
右键单击pom.xml文件,转到Maven,单击重新导入。我也有类似的问题,这个方法对我很有效。
我导入的Maven项目也遇到了类似的问题。在一个模块中,它不能为另一个模块的一部分解析导入符号(是的,该模块的一部分可以解析)。
我把“Maven主目录”改为一个新版本,解决了我的问题。
更新:有效1小时,回到破碎状态…