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

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

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

请查看屏幕截图:

有人知道吗?


当前回答

经过长时间的搜索,我发现在一个maven项目中,我的机器上的一个依赖项以某种方式损坏了。奇怪的是,在编译后的java代码中,依赖项仍然正确地工作。然而,当我清理并重新构建maven依赖项缓存时,问题消失了,IntelliJ识别出了这个包。你可以通过运行:

mvn dependency:purge-local-repository

有趣的是,我的问题的根源不是IntelliJ,而是maven本身。

其他回答

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

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

点击配置

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

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

让我们清除缓存

什么为我做的是编辑包文件在。idea文件夹,因为我不小心添加源到这个jar库和android无法解决它删除源行标记在b/m图库错误。

然后重建gradle, bam问题就解决了。

您可以尝试使缓存无效并重新启动IntelliJ,在许多情况下这将有所帮助。

File ->使缓存失效/重新启动

@Anton Dozortsev我被类似的行为逼疯了;我最终重新安装了IDE很多次,只有在删除IDEA应用程序、所有缓存、首选项等之后才解决了这个问题。

在此期间,我尝试了各种步骤(如重新启动、失效、删除.idea和*。Iml文件等。)

事实证明,这个问题是由于IntelliJ的idea.max.intellisense.filesize设置。我把它设置为100KB,这比我的依赖项的大小要小,导致IntelliJ显示它为未知,就像你的截图一样。

Fix:

点击帮助->编辑自定义属性 将属性设置为较大的值;默认为2500KB idea.max.intellisense.filesize = 2500

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

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

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