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

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

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

请查看屏幕截图:

有人知道吗?


当前回答

我最近在尝试使用Intellij在NiFi上工作时遇到了这个问题,原来问题是NiFi需要Maven >= 3.1.0,而我用(我猜我的默认)签出的版本是3.0.5。更新项目的Maven版本解决了这个问题,所以在某些情况下,Maven版本不对齐可能是一个问题…我猜这是相当不寻常的,但如果你在线程上走了这么远,你可能有一个不寻常的问题:)

其他回答

我发现下面来自@ josself -harush和@matt-leidholm的答案在另一个链接中很有用

在IntelliJ编辑器中,单击红色关键字(以Integer为例)并按ALT + ENTER(或单击灯泡图标) 从intent菜单中选择Setup JDK

点击配置

在我的例子中,JDK路径不正确(指向/opt/jdk1.7.0_51而不是/opt/jdk1.7.0_65)

点击…并浏览到正确的JDK路径

让我们清除缓存

老问题,21回答。我遇到了一个问题,我的go构建可以成功构建代码,但我的Goland IDE显示缺少模块或依赖项。我尝试了无效缓存和重新启动,但有同样的问题。从另一个S/O线程,我尝试将GO111MODULE=添加到我的路径变量,但这也没有解决IDE问题。

对我有用的是在Preferences中选择正确的GOROOT路径> Go > GOROOT。

我安装了两个版本的go,一个是自制的,一个是在线的go安装程序。我选择了brew安装路径,我的IDE能够正确地解析依赖项。

>项目结构->模块,找到有问题的模块,点击它,选择右侧的Dependencies选项卡。单击绿色加号,尝试添加导致问题的jar或库。这对我很有用。

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

检查模块源根。

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

简单的重启对我很有效。

我建议首先尝试重新启动,然后您可以选择使缓存无效。

PS:清除系统缓存会导致清除本地历史记录。