问题标签 [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.

0 投票
2 回答
678 浏览

intellij-idea - 抑制关于 IDEA 中未使用的 Kotlin 属性的警告

考虑我有一个参数化的TestNG测试:

如何阻止IDEA抱怨数据提供者属性(parameters在我们的例子中)未使用?用注释属性@get:SuppressWarnings("unused")没有帮助。

0 投票
1 回答
74 浏览

android-studio - 防止 Android Studio 检查将 Java 流链标记为包含可能的 NullPointerException

我正在编写一个实用方法来提取一组包装的不可打包对象:

Android Studio 警告我,我的.map(UnparcelableHolder::getUnparcelable)调用可能会导致NullPointerException. filter(Objects::nonNull)由于我之前的电话,这不应该是可能的。如何告诉 Android Studio 的检查员我的代码是干净的?

这是一个MCVE ,可在 github 上使用 Android Studio 3.4 beta 2 构建:

build.gradle

MainActivity.java

.map(Foo::getString)通话中也会出现同样的问题。具有讽刺意味的是,.map(Bar::getFoo)尽管肯定会抛出一个NullPointerException.

0 投票
1 回答
1927 浏览

java - 是否可以在 IntelliJ 中为私有方法禁用“可选用作字段或参数类型”检查?

我不想完全禁用警告,而且我已经知道为什么您不应该将Optional其用作参数。但是,我认为这与我的情况无关。

出于说明目的,我的代码如下所示:

它获取人员列表,然后是第一个项目,然后将其转换。由于我正在调用一个外部 API 并获取一个包含一堆字段的数据传输对象,这些字段中的任何一个都可以为空,因此任何集合都包装在一个额外的类中,即使这样,获取一个空列表也是一个有效的情况。所以,我最终得到了一个像这样的冗长代码来转换单个值。我将它放入一个单独的辅助方法中,以避免在一个地方出现所有冗长的内容。

但是 IntelliJ 抱怨我正在传递一个Optional参数。我通常会同意这一点,但如果它是一种私有方法,我用它来避免另一种方法变得太长,我不认为这是一个问题——我可能需要从数据传输中获取多个值目的。

  • 我仍然想避免创建接受的公共方法Optional或持有的字段,Optional但我想禁用对私有方法的检查。
  • 我宁愿不必注释每个方法,@SuppressWarnings("OptionalUsedAsFieldOrParameterType")因为它很快就会变得烦人。我可以在接受一些外国 DTO 的各种类中拥有多个这些方法。
  • 同样,我也不想传递非Optional参数只是为了将其包装在方法中。特别是因为在某些情况下我只有一个Optional,所以我必须打开它,然后用类似的东西把它包回去,myMethod(data.orElse(null))然后Optiona.ofNullable(parameter)在方法中执行。

总而言之,即使它不会跨系统或跨层传输数据等,总是将其视为问题似乎是一个不合理的限制。

那么,我可以从私有方法的设置中禁用它吗?

0 投票
2 回答
2010 浏览

python - Pycharm - 禁用'局部变量'xxx'可能在分配之前被引用'

在pycharm中,我想禁用以下检查警告:“局部变量'xxx'可能在分配之前被引用”但我在设置/检查中找不到它。

PS:这不是重复的,因为我理解这个警告。我只是问如何在 pycharm 中禁用它。

更新:请在下面找到我的意思的一个例子

解决方案:

“未绑定的局部变量”检​​查。(参见下面的 Lomtrur 答案)

0 投票
1 回答
3109 浏览

java - IntelliJ 检查:“方法调用可能会产生 NullPointerException”。建议的修复有意义吗?

我经常遇到以下 IntelliJ 检查

检查对我来说似乎很好,但 IntelliJ 建议的修复之一(或通常是唯一的)是这样的:

然后警告消失了。但我不明白这有什么帮助?requireNonNull只会抛出与on 调用NullPointerException时无论如何都会抛出的相同的东西。.containsnull

通常,IntelliJ 会提出有意义的建议,这是一个常见的建议,所以我在这里错过了重点吗?

0 投票
0 回答
292 浏览

python - 向类添加方法时PyCharm“未使用的导入语句”

我想向一个类添加一个方法,而不扩展另一个类(因为导入语句应该保持不变)。

从概念上讲,我目前的方法是:

add_method.py

main.py

这可以完成工作,但是,PyCharm 无法识别实际使用了import add_method导入语句:“未使用的导入语句”。是否有一种优雅的方法可以通过 PyCharm 识别导入来获得相同的效果?

0 投票
0 回答
71 浏览

angular - MatAutocomplete 上的 IntelliJ 检查错误

使用材料自动完成(来自 angular-material 7.3.7)时,我总是从 IntelliJ 收到检查错误。代码示例:

IntelliJ 显示的检查错误:

matAutocomplete检查错误

具体来说,该部件[matAutocomplete]="auto"会触发 类型的检查错误AngularInvalidExpressionResultType

由于该示例是直接从angular-material复制的,并且自定义代码显示相同的错误,我开始怀疑这是否真的是一个错误或只是检查中的一个错误。

-Input[autocomplete]需要一个提供的 type MatAutocomplete,因此错误描述甚至没有意义。

这是 IntelliJ 中的错误吗?

我的 IntelliJ 版本:IntelliJ IDEA 2019.1.3 (Ultimate Edition) / Build #IU-191.7479.19, built on May 28, 2019

0 投票
2 回答
153 浏览

java-8 - 未经检查的调用 ifPresent 检查,为什么?

0 投票
0 回答
78 浏览

kotlin - 如何基于正则表达式创建自定义 IntelliJ IDE 检查?

是否可以创建自定义 IntelliJ IDEA 检查来检测与某个正则表达式匹配的代码?如果是这样:如何?

例如,我想在代码中找出在Map方括号内创建用于查找 a 的键的位置:

我不要求“结构搜索和替换”,因为今天的 Kotlin 不可用。

0 投票
2 回答
182 浏览

java - 为什么 IntelliJ 要我改变这个?

简单的一行代码:

IntelliJ IDEA 提供将此行更改为 4 种其他方式来实现相同的结果:

为什么?+= 有什么问题?任何人都可以解释一下吗?谢谢。