有没有办法在IntelliJ中本地(按需)执行Sonar的SSLR(基于squid)规则?

时间:2014-04-01 09:47:14

标签: java intellij-idea code-analysis sonarqube static-code-analysis

有一个SonarQube for IntelliJ,即使a bit temperamental允许您从Sonar下载规则违规并直接在IntelliJ中查看它们(缺点是分析运行在服务器,需要同步;你可以得到你在Sonar中得到的好处,而且还有QAPlugin,它允许你import Sonar的Checkstyle,PMD和Findbugs规则并在本地运行它们,但它尚不支持SSLR/squid rules。然而,声纳似乎是moving away from PMD & Co. towards SSLR

目前是否有办法在IntelliJ中导入Sonar基于SSLR的规则并在本地运行?

2 个答案:

答案 0 :(得分:0)

您应该查看official SonarQube IntelliJ plugin,它允许您在IntelliJ中运行SonarQube分析 - 无论您在SonarQube实例上配置的规则是什么(SonarQube规则,Checkstyle,PMD,Findbugs)。< / p>

答案 1 :(得分:0)

从版本2开始,SonarQube社区插件不仅允许您从Sonar下载问题并直接在IntelliJ中查看它们,而且还可以运行任何本地分析脚本,然后结果显示在Intellij中,就像任何其他检查一样。

您不需要导入任何规则,而只需使用sonar-runner或任何构建工具插件(如mvn sonar插件)运行本地分析脚本:

/path/to/mvn sonar:sonar -DskipTests=true -Dsonar.language=java  -Dsonar.analysis.mode=incremental -Dsonar.host.url=http://your.sonar.host -Dsonar.profile=your_squid_based_profile

这将创建一个sonar-report.json文件:

Export results to /path/to/your/project/target/sonar/sonar-report.json

您可以配置插件执行哪个脚本以及在何处读取结果。此外,插件并不关心问题是来自鱿鱼还是任何其他规则集。

另请参阅:https://github.com/sonar-intellij-plugin/sonar-intellij-plugin