Sonarlint Eclipse StackOverflowError

Sonarlint Eclipse StackOverflowError

SonarLint for Eclipse 在以下情况下崩溃:

在同一个包中创建几个文件:

  1. Menu.java

    package com.leokom.sonarlint.Whosebugerror;
    
    public interface Menu {
    
    }
    
  2. SomeClass.java

    package com.leokom.sonarlint.Whosebugerror;
    
    public class SomeClass {
        enum Menu implements Menu {
        }
    }
    

SonarLint 分析 SomeClass.java 时发生崩溃,Eclipse 提示退出:

显示错误:

An internal error occurred during: "SonarLint analysis of file /GoodJob/src/main/java/com/leokom/sonarlint/Whosebugerror/SomeClass.java". java.lang.WhosebugError

SonarLint 控制台:

SonarLint analysis of file /GoodJob/src/main/java/com/leokom/sonarlint/Whosebugerror/SomeClass.java...

我应该如何处理这个用例?我该如何解决?

我认为您的原始代码会导致无限递归。尝试将您的代码更改为

package com.leokom.sonarlint.Whosebugerror;
public class SomeClass {
    enum Menu implements com.leokom.sonarlint.Whosebugerror.Menu {
    }
}

我按照问题中描述的用例进行了操作,遇到了与 OP 相同的错误(也尝试在 IntelliJ 中重现此问题,但显然这只是 Eclipse 的问题)。

我为 SonnarSource 团队打开了一个可以看到的 bug here

我会根据从 SonarSource 得到的答案更新答案。

跟进:SonarSource 团队已经打开 SLE-272 JIRA issue about this problem. It has been reported by Julian Henry。应该会在3.7版本解决。