问题标签 [sonarlint-intellij]

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 投票
1 回答
2117 浏览

java - SonarQubeMojo 的 SonarQube Intellij 插件错误

我在运行 intellij SonarQube 插件时遇到问题。连接到我的声纳服务器后,我可以看到可供我使用的不同项目。我现在正在尝试将其设置为本地分析。

我的本地分析脚本如下

我得到的错误是这样的,

我搜索了与此类似的问题,它说您需要使用 1.7 或更高版本进行编译。我已经在我的脚本中定义了编译器和源目标,所以它应该使用 1.7 对吗?我还缺少什么?

0 投票
0 回答
407 浏览

java - 为目录运行 sonarLint 分析?

我正在为 IntelliJ Idea 使用Sonar-lint作为静态代码分析工具。

从 Intellij 底部出现的 Sonar-Lint 工具窗口,我可以对当前文件或当前打开的文件运行分析。

有没有办法为整个项目运行它?或者至少对于给定的目录/包?

在此处输入图像描述

0 投票
4 回答
26891 浏览

intellij-idea - 如何在 IntelliJ IDEA 上关闭 SonarLint 自动触发

Intellij IDEA 中是否有某种方法可以关闭自动 SonarLint 分析?

我有大约 10,000 到 20,000 行代码类(不要问,不是我的错,试图重构)。每次我在课堂上编辑一个字符时,SonarLint 插件都会让 IDEA 在几分钟内无法使用。

无法在“其他设置”>“SonarLint 常规设置”中将“自动触发分析”复选框保存为未选中状态。我的问题还有其他解决方案吗?我真的很想用这个插件。我只是不能在自动模式下使用它。

0 投票
1 回答
738 浏览

intellij-idea - Sonarlint 自动触发总是关闭?

当前使用 Intellij IDEA 2016.2.3 上的 sonarlint 插件的 2.3.1 版本。连接到远程声纳服务器。

这可能是一个已知的错误,但我似乎无法让自动触发的分析工作。我单击复选框并保存设置,但它永远不会起作用。当我返回设置时,复选框再次“神奇地”取消选中。

有什么东西会阻止启用此功能吗?手动触发的分析仍然可以正常工作,但不会“即时”捕获错误。

0 投票
1 回答
4515 浏览

intellij-idea - Intellij SonarLint 2.3 - 忽略规则

我刚刚将 Intellij Idea 的 SonarLint 插件更新到 2.3.2 版。变更日志说,自从 2.3 版以来,连接模式下的规则排除应该是可用的。

以下是我的配置,似乎已更正,但仍会弹出忽略的规则。

分析配置

0 投票
0 回答
239 浏览

sonarqube - IntelliJ(和 Maven)中的 SonarLint 根据类路径检测误报

我们有一个自定义库,它提供了一种Strings.isFilled确保给定字符串既不为空也不为空的方法。(https://github.com/scireum/sirius-kernel/blob/master/src/main/java/sirius/kernel/commons/Strings.java#L65

如果我们现在有这样的模式:

那么 sonarlint 将触发规则 S2637:“@NonNull”值不应设置为 null。但是:如果我们手动设置 sonar.java.libraries 并且只将本地 maven 存储库中的库 (sirius-kernel.jar) 放入其中,则分析有效!

是否有可能,IntelliJ 和 Maven 都为 SonarLint 提供了太多的库,以至于它开始忽略一些?使用maven和debug logging的时候,然后sonar:sonar高兴的报告说它使用了classpath中的所有库,能找到所有需要的类并且没有报错?

0 投票
0 回答
814 浏览

java - 当从“未使用”的公共方法调用私有方法时,SonarQube 规则“squid:UnusedPrivateMethod”的误报?

我在同一个类中有一个公共方法foo()和一个私有方法。bar()

foo()是唯一的调用者,但它清楚地调用bar()但 IntelliJ 显示违反此规则,squid:UnusedPrivateMethod,用于方法声明bar()

删除这个未使用的私有 'bar' 方法。

我的设置:

  • IntelliJ IDEA 2016.3.5 与 SonarLint 2.8.0.1735
  • SonarLint 已连接(连接模式)到 SonarQube 5.6.5 实例,该实例无法识别这些违规(!)
  • foo()有一个@Override声明。我不知道这是否有任何影响,但可能是有用的信息

这似乎是 SonarLint 中的一个错误。有人可以确认吗?

更新:在这种情况下不是使用它的公共方法,而是同样的问题

0 投票
1 回答
1764 浏览

android-studio - 从 sonarlint 分析中排除生成的类

当我运行sonarlint分析时,还会分析不需要的生成类(R.java、Dagger 生成的类等)。当我运行 Android Studio 时不会发生这种情况Analyze -> Inspect code...

如何为 sonarlint 分析指定特定范围或排除生成的文件?

0 投票
1 回答
3723 浏览

intellij-idea - SonarLint (IntelliJ Idea) 无法更新绑定:最低要求版本错误

我已经有一段时间无法从组织的 SonarQube 服务器更新 SonarLint 的规则了。它工作得很好,但突然我开始收到以下消息: 更新绑定错误:版本错误

我猜可能 SonarQube 服务器已更新到较新的版本(目前是 5.6 版),但是如何升级我的本地插件版本以匹配它?(如果这就是这个错误的意思)。
我等待插件发布另一个更新(v2.9)并希望这能解决问题,但它没有,同样的结果。

我找到了这个页面,上面写着对于 SonarQube 5.6+,我应该使用最新的 SonarJava 4.7.1 插件,但不知道怎么说我的 SonarLint 插件(版本 2.9.0.1816)来使用它。 https://docs.sonarqube.org/display/PLUG/SonarJava

我会很感激任何帮助,谢谢!

当前环境:
SonarQube 服务器:5.6
IntelliJ Idea:2017.1
IntelliJ SonarLint:2.9.0.1816

0 投票
0 回答
365 浏览

java - SonarQube 不会发现所有违反规则的行为

我正在使用带有默认配置文件Sonar way的 SonarQube 6.3.1 。我安装了最新的 SonarJava 插件 (4.8.0.9441)。

我可以看到应该使用的规则 SQL 绑定机制被激活。

在此处输入图像描述

我已经为 Intellij 安装了 SonarLint 2.9.0 插件并连接到正在运行的 SonarQube 服务器。

从声纳页面复制示例违规后,我可以在我的 IDE 中看到该插件工作正常。到目前为止,一切似乎都很完美。

在此处输入图像描述

不幸的是,对 SonarQube 服务器的分析没有发现这个漏洞。另一个 owasp-a6 规则也是如此, Cookie 应该是安全的(Sonarlint 也发现了)。但另一方面,一些 owasp 规则起作用(即不应使用控制台日志记录)。 这是一个已知的声纳问题,一些规则被省略了吗?排除不是问题,我很确定正在分析这些文件,因为已经发现了一些其他问题。