当 Intellij IDEA 未安装在 C: 驱动器上时,sonarlint 不起作用 windows
sonarlint doesn't work when Intellij IDEA is not install on C: drive in windows
我安装了 2 个 IntelliJ IDEA,一个在 C: 驱动器上,一个在另一个驱动器 (F:) 上。我已经安装了两个 SonarLint 插件,它只适用于 C: 驱动器安装。
就是'other' has different roor and I think has to do with the following.
错误堆栈跟踪是
java.lang.IllegalArgumentException: 'other' has different root
at sun.nio.fs.WindowsPath.relativize(WindowsPath.java:392)
at sun.nio.fs.WindowsPath.relativize(WindowsPath.java:44)
at org.sonarlint.intellij.util.SonarLintUtils.getRelativePath(SonarLintUtils.java:383)
at org.sonarlint.intellij.issue.IssueManager.wasAnalyzed(IssueManager.java:108)
at org.sonarlint.intellij.issue.IssueManager.store(IssueManager.java:120)
at org.sonarlint.intellij.issue.IssueManager.store(IssueManager.java:114)
at org.sonarlint.intellij.issue.IssueProcessor.process(IssueProcessor.java:72)
at org.sonarlint.intellij.analysis.SonarLintTask.run(SonarLintTask.java:114)
at org.sonarlint.intellij.analysis.SonarLintUserTask.run(SonarLintUserTask.java:39)
at org.sonarlint.intellij.analysis.SonarLintJobManager.lambda$null(SonarLintJobManager.java:115)
at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:176)
at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:556)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:501)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:66)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:163)
at org.sonarlint.intellij.analysis.SonarLintJobManager.lambda$runTask(SonarLintJobManager.java:115)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
我确认 SonarLint for IntelliJ 无法分析文件系统根目录下的文件,而不是 SonarLint 存储其文件的文件(在 IntelliJ 的配置目录中)。
我安装了 2 个 IntelliJ IDEA,一个在 C: 驱动器上,一个在另一个驱动器 (F:) 上。我已经安装了两个 SonarLint 插件,它只适用于 C: 驱动器安装。
就是'other' has different roor and I think has to do with the following.
错误堆栈跟踪是
java.lang.IllegalArgumentException: 'other' has different root
at sun.nio.fs.WindowsPath.relativize(WindowsPath.java:392)
at sun.nio.fs.WindowsPath.relativize(WindowsPath.java:44)
at org.sonarlint.intellij.util.SonarLintUtils.getRelativePath(SonarLintUtils.java:383)
at org.sonarlint.intellij.issue.IssueManager.wasAnalyzed(IssueManager.java:108)
at org.sonarlint.intellij.issue.IssueManager.store(IssueManager.java:120)
at org.sonarlint.intellij.issue.IssueManager.store(IssueManager.java:114)
at org.sonarlint.intellij.issue.IssueProcessor.process(IssueProcessor.java:72)
at org.sonarlint.intellij.analysis.SonarLintTask.run(SonarLintTask.java:114)
at org.sonarlint.intellij.analysis.SonarLintUserTask.run(SonarLintUserTask.java:39)
at org.sonarlint.intellij.analysis.SonarLintJobManager.lambda$null(SonarLintJobManager.java:115)
at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:176)
at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:556)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:501)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:66)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:163)
at org.sonarlint.intellij.analysis.SonarLintJobManager.lambda$runTask(SonarLintJobManager.java:115)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
我确认 SonarLint for IntelliJ 无法分析文件系统根目录下的文件,而不是 SonarLint 存储其文件的文件(在 IntelliJ 的配置目录中)。