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

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

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

请查看屏幕截图:

有人知道吗?


当前回答

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

其他回答

我也遇到过类似的问题,迈克的评论帮助我朝着解决它的方向前进。 虽然所需的库也是我项目中模块的一部分,但它需要改变作用域。在模块依赖项中,我将范围更改为“编译”而不是“测试”,现在对我来说工作得很好。

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

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

如何去除

检查模块依赖关系。

项目结构(Ctrl+Alt+Shift+S)。 模块 选择您的问题模块。 更改选项卡顶部的窗口“依赖”。 检查需要什么库(也许,您需要添加指定的库 在标签“库”)或模块已经列出在这里,它有权利 Scope(主要是“编译”)。

我导入的Maven项目也遇到了类似的问题。在一个模块中,它不能为另一个模块的一部分解析导入符号(是的,该模块的一部分可以解析)。

我把“Maven主目录”改为一个新版本,解决了我的问题。

更新:有效1小时,回到破碎状态…

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