从 IntelliJ 清理代码选项中排除单元(修复 java 8 中显式异常的类型推断)

Exclude unit from IntelliJ clean-up code option (the fix for type inference of explicit exceptions in java 8)

我想从 IntelliJ 的清理代码选项中排除特定行(或最小大小的单元)。我们需要解决 this problem with type inference of exceptions 已在 Java 9 中修复的问题,但我们陷入了 Java 8.

Oracle 在 link:

中给出了 IntelliJ 清理的解决方法
- return g(f("Hi", MyException.class));
+ return g(this.<String, MyException>f("Hi", MyException.class));

如果您勾选清理代码,此修复程序将由 intellij 清理。

我们可以在未勾选 'clean-up code' 的情况下进行推送,但它有很多贡献者,因此最终会有人勾选并撤消修复。

您可以定义格式化程序标记:首选项 |编辑|代码风格 |启用格式化程序标记。

勾选Example of using formatting markers

已解决,关键是在代码中,因为我们不会将更改推送到我们的个人 IntelliJ 配置。

  1. Alt + Enter 泛型变灰(警告)
  2. 突出显示 Remove all type arguments 并按 right arrow
  3. Suppress for ...

对于 'method' 将出现注释 @SuppressWarnings - 这是我个人的偏好。