问题标签 [intellij-inspections]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 如何不使用 Python 2 兼容代码检查 raw_input 上的错误
我有一个可以在 Python 2 和 Python 3 上运行的 Python 模块。在某些时候,该模块需要用户输入。它如何做到这一点取决于 Python 主要版本:
- Python 2:使用
raw_input
- Python 3:使用
input
我的 IDE 是 PyCharm,我的项目解释器是 Python 3.8
。PyCharm 检查raw_input
.
除了# noinspection PyUnresolvedReferences
标签,我怎样才能让 PyCharm 不抱怨raw_input
?我可以启用一些设置吗?
示例代码
我在屏幕上看到的内容:
版本
- Python:
3.8.2
- PyCharm:
CE 2019.3.1
我的 PyCharm 已Code compatibility inspection
为 Python 2.7
、3.6
、3.7
和3.8
.
java - 代码检查不起作用!Intellij IDE
我在使用 intellijs Ultimate 代码检查时遇到问题!它仅向我展示了代码替换的基本检查/替代方法,例如“反转 if 条件”,仅此而已。如果选择了所有内容,我已经检查了首选项,并且我还重新安装了 intellij,但仍然无法正常工作!
它曾经为我提供了更多代码替换的替代方案,不仅是“反转 if 条件”,而且还有更多替代方案。其中之一是“用功能样式表达式替换 Optional.isPresent() 条件”
所以每当我写:
...它曾经给我这种替代品:
phpstorm - IntelliJ 的搜索模板语言是否有办法识别没有被 if 语句包装的函数调用
我正在查看 PhpStorm 中的一些遗留代码,并且代码库中有一些实例,其中特定函数调用被 if 语句中的另一个函数调用包装,例如
我仅使用基本的 Linux find/grep 命令来突出显示感兴趣的文件就取得了一些成功,但我希望能够创建一个结构搜索检查,该检查可以找到callThisFunction
未被特定 if 语句包装的实例。
有谁知道香草 IntelliJ 搜索模板功能是否可以做到这一点?
java - 解析 IntelliJ 插件代码检查中的泛型类型
我编写了一个对Java 代码执行一些检查的IntelliJ 插件。
对于其中一项检查,我需要知道通用字段的类型。
例子:
该类Base
包含一个带有泛型参数的列表,该参数T
可从类Base
及其派生类访问Derived
。
我有一个注释器(可能更改为 LocalInspection)来检查list
两个类的访问权限。这是我到目前为止所拥有的(为简单起见,我省略了类型和空值检查):
我想在使用的上下文中获得最低要求的泛型类型(the PsiReferenceExpression
)。或者关于我上面的例子:
list
在课堂上的访问Base
,我想输入B
list
在课堂上的访问Derived
,我想输入D
但我总是进入PsiType:B
变量refTypes
。我必须改变什么才能获得预期的类型?
小背景信息:我想检查反射使用的类型是否包含字段或方法。
java - 为什么 IntelliJ 默认禁用通用用法检查?
为什么 IntelliJ 默认禁用通用用法检查?
这些检查 ( Java 5 -> Raw use of parametrized class
) 需要明确启用,我发现新开发人员不知道它们。有什么好的理由我不知道为什么使用原始类型是一个好习惯吗?
python - 使用开发安装后,警告对未解决的引用不起作用
我有一个 PyCharm 错误,在我使用开发安装后pip install -v -e .
,IDE 不会警告我任何未解决的引用。例如,对于未解析的引用,您通常会得到以下信息:
但是现在在开发安装后,未解析的引用不会给出任何警告(对于任何名称、函数、变量、模块......):
我认为这个错误是在我用破折号(in setup.py
)错误地命名一个模块并安装它之后触发的,如下所示:
它一开始是安装的,过了一会儿 IDE 警告该名称是非法的。但是在我将名称更改为使用下划线而不是破折号之后,如果我使用开发安装,IDE 的参考检查对于所有项目和解释器都已损坏。
我尝试了此列表中的所有常用解决方案以查找参考错误(使缓存无效、删除.idea
文件夹、新建venv
、更改解释器、重新启动、重新启动等)。但除了清除 IDE 范围内的用户首选项(我想避免它)或重新安装 IDE(更糟)之外,我尝试了列表中的所有内容,但没有解决问题。对于所有影响,我使用开发安装时,我的参考检查都被破坏了。
我正在使用src
具有最小setup.py
和常规的通常布局venv
,以下文件和目录结构:
和一个最小的setup.py
更常见的错误是引用未解析,但在这种情况下恰恰相反:代码运行并找到引用。问题是(如第二个屏幕截图所示)它没有警告我故意引入的任何未解决的引用。
但是当我进行检查时,所有其他警告似乎都正确发出。(我想我已经激活了正确的检查,如下面的屏幕截图所示。)如何解决这个短暂擦除 IDE 范围内的用户偏好或完全重新安装 IDE?会不会有一些我没有意识到的间接原因?
intellij-idea - 在将“==”与实现 Comparable (Groovy) 的类一起使用时防止警告“GrEqualsBetweenInconvertibleTypes”
请注意,这个问题与 Groovy('==' 表示平等而不是身份)和 IntelliJ IDEA(但我不认为这个问题是特定于 IDE 的)有关。
我有一个实现以下可比较的类:
所以在这种情况下,new Money('10.00') == '10'
编译和运行完美,但我仍然收到 'GrEqualsBetweenInconvertibleTypes' 编辑器警告:'==' between objects of inconvertible types 'Money' and 'String'
。
直接问题:有没有办法在 Groovy 中构造类或方法来避免这个警告,而不必在 IDE 设置中完全关闭它?
无关:如果您对课程的设计有任何其他建议,或者只是让您感到困扰,请随时对此帖子发表评论。我总是乐于改进某些东西。