对于不同的库和不同的项目,这个问题会间歇性地发生。 当尝试导入库时,包将被识别,但无法解析类名。
如果在import语句中,我右键单击-> Goto ->包的声明,我看到所有反编译的类显示在侧窗格中——包括我需要的那些—— 如果我尝试自动完成import语句,我注意到我需要的类没有在下拉列表中显示。
我已经试过使缓存无效了,没用。我找不到任何类冲突——在我的类路径中没有其他具有相同包名的jar文件。 我能够将这个类导入到其他项目中。
请查看屏幕截图:
有人知道吗?
对于不同的库和不同的项目,这个问题会间歇性地发生。 当尝试导入库时,包将被识别,但无法解析类名。
如果在import语句中,我右键单击-> Goto ->包的声明,我看到所有反编译的类显示在侧窗格中——包括我需要的那些—— 如果我尝试自动完成import语句,我注意到我需要的类没有在下拉列表中显示。
我已经试过使缓存无效了,没用。我找不到任何类冲突——在我的类路径中没有其他具有相同包名的jar文件。 我能够将这个类导入到其他项目中。
请查看屏幕截图:
有人知道吗?
当前回答
请尝试File->同步。然后在使IntelliJ失效之前关闭并重新打开。
一旦我重新开始。我会失效,但同步清除一切重新启动后。
其他回答
检查模块依赖关系。
项目结构(Ctrl+Alt+Shift+S)。 模块 选择您的问题模块。 更改选项卡顶部的窗口“依赖”。 检查需要什么库(也许,您需要添加指定的库 在标签“库”)或模块已经列出在这里,它有权利 Scope(主要是“编译”)。
我最近在尝试使用Intellij在NiFi上工作时遇到了这个问题,原来问题是NiFi需要Maven >= 3.1.0,而我用(我猜我的默认)签出的版本是3.0.5。更新项目的Maven版本解决了这个问题,所以在某些情况下,Maven版本不对齐可能是一个问题…我猜这是相当不寻常的,但如果你在线程上走了这么远,你可能有一个不寻常的问题:)
@Anton Dozortsev我被类似的行为逼疯了;我最终重新安装了IDE很多次,只有在删除IDEA应用程序、所有缓存、首选项等之后才解决了这个问题。
在此期间,我尝试了各种步骤(如重新启动、失效、删除.idea和*。Iml文件等。)
事实证明,这个问题是由于IntelliJ的idea.max.intellisense.filesize设置。我把它设置为100KB,这比我的依赖项的大小要小,导致IntelliJ显示它为未知,就像你的截图一样。
Fix:
点击帮助->编辑自定义属性 将属性设置为较大的值;默认为2500KB idea.max.intellisense.filesize = 2500
右键单击pom.xml文件,转到Maven,单击重新导入。我也有类似的问题,这个方法对我很有效。
文件->无效缓存/重新启动或重建项目没有工作wor我。
在我的Gradle项目中起作用的是在IntelliJ v2017的右上角的Gradle选项卡中“刷新所有Gradle项目”,使用如下所示的黄色标记按钮: