对于不同的库和不同的项目,这个问题会间歇性地发生。 当尝试导入库时,包将被识别,但无法解析类名。

如果在import语句中,我右键单击-> Goto ->包的声明,我看到所有反编译的类显示在侧窗格中——包括我需要的那些—— 如果我尝试自动完成import语句,我注意到我需要的类没有在下拉列表中显示。

我已经试过使缓存无效了,没用。我找不到任何类冲突——在我的类路径中没有其他具有相同包名的jar文件。 我能够将这个类导入到其他项目中。

请查看屏幕截图:

有人知道吗?


当前回答

我找到根源了!

在我的情况下,我添加了一个jar文件,包括一些java源文件,但我认为java源是坏的,在Intellij Idea依赖库中它自动添加源,所以在编辑器中导入是坏的,只需删除“项目结构”中的源代码->“库”,它为我工作。

其他回答

此外,检查您的类是否在编译排除项中

如果您看到左上角有一个灰色的小叉,您必须从编译排除中删除类

如何去除

这可能有多种原因。对我来说,这是错误的根源问题。无效缓存不能与其他解决方案一起工作。

检查模块源根。

项目结构(Ctrl+Alt+Shift+S)。 模块 选择您的问题模块。 在“源”窗口顶部的更改选项卡。 删除不需要的源根。保留一个并在这个根中添加src和test源根。

请尝试File->同步。然后在使IntelliJ失效之前关闭并重新打开。

一旦我重新开始。我会失效,但同步清除一切重新启动后。

File ->使缓存失效/重新启动 和 构建项目

我的问题是我的Maven插件在更新后被禁用。我去帮助->找到行动…->输入Maven,发现它是“关闭”。我点击了拨动开关,经过一些加载后,它被重新启用。