PyCharm/IntelliJ 中的红色下划线(未解决的引用)停止工作 - 在我的一些 Anaconda 项目中

Posted

技术标签:

【中文标题】PyCharm/IntelliJ 中的红色下划线(未解决的引用)停止工作 - 在我的一些 Anaconda 项目中【英文标题】:The red underlines (unresolved references) in PyCharm/IntelliJ stop working - on some of my Anaconda projects 【发布时间】:2021-07-14 13:27:55 【问题描述】:

我在 IntelliJ Ultimate 上使用 PyCharm(Python 插件)。

通常,IDE 会用红色下划线突出显示任何未定义的标识符,但我注意到在某些项目中,此功能停止工作。

红色下划线非常有用,因为它们允许我使用 IntelliJ 的自动修复(例如导入或创建缺少的函数/类)。

我能想到的几乎所有其他 PyCharm 功能似乎仍在工作。例如,自动完成功能就很好。

有时,如果我将项目的 SDK 设置为 ,然后将其设置回正确的 Python 解释器,项目就会开始正确突出显示 NameErrors。这似乎并不能始终如一地工作。我正在使用 Conda,我尝试将 Conda envs 设置为普通的 virtualenvs,或者设置为“系统解释器”。

我已经搜索了日志文件,但看不到任何可能表明插件无法初始化的内容。

在大多数情况下(系统短暂决定工作时除外),我没有看到红色下划线,但所有其他 PyCharm 功能似乎都可以正常工作。此外,这似乎只影响 Python:Scala 和 Java 代码的行为与您在 IntelliJ 中的预期完全一样。

有没有办法调试这个?怎么了?我该如何解决?

【问题讨论】:

使用 File | 使缓存无效后是否可重现?使缓存无效...?你使用什么 IntelliJ 版本? 它是可重现的。无效并不能解决问题。我用的是2021.1.1 Ultimate Edition,目前是通过JB Toolbox下载的最新稳定版。 您很可能禁用了检查。转到 设置/首选项 |编辑 |检查并确保未解决的引用检查已打开。 不,它没有关闭 它是否处于阅读器模式? jetbrains.com/help/pycharm/reader-mode.html 【参考方案1】:

我遇到了同样的问题with the symptons 你描述的。根据描述,原因是您启用了"Reader Mode"

通常,IDE 会用红色下划线突出显示任何未定义的标识符,但我注意到在某些项目中此功能停止工作。

对于当前安装在项目虚拟环境或解释器中的模块,红色下划线/错误代码被抑制。 (这是有道理的,因为如果由于某种原因您想从已安装的库中读取代码,那么库作者是否犯了错误或者该库代码例如根据您的代码样式设置发出警告等通常不是您关心的问题...)

有时,如果我将项目的 SDK 设置为 ,然后将其设置回正确的 Python 解释器,项目就会开始正确突出显示 NameErrors。

如果您将项目 SDK 更改为未安装模块的解释器,则会再次显示错误。您可以在启用阅读器模式的情况下设置错误显示,检查File>Settings>Editor>Reader Mode>Error and warning highlighting, inspection widget 处的选项。如截图所示

如果您禁用阅读器模式,IDE 也会像往常一样再次发出错误。

【讨论】:

以上是关于PyCharm/IntelliJ 中的红色下划线(未解决的引用)停止工作 - 在我的一些 Anaconda 项目中的主要内容,如果未能解决你的问题,请参考以下文章

RestAssured 获取请求中的 pathParam() 方法出现红色下划线错误以及如何解决此问题

你好,请问在Word文档中的所有红色字体下面加上下划线是怎么做到的?

Intellij/Pycharm 无法调试 Python 模块

pycharm / intellij - jupyter markdown 不渲染

如何在 PyCharm/IntelliJ 中自动“chmod”具有特定扩展名的文件?

IntelliJ IDEA 去掉红色波浪线