2016-10-03 218 views
20

sonarQubeとSonarLintとはどのように異なっていますか? SonarQubeにはサーバーが関連付けられており、Sonar lintはプラグインのように機能します。しかし、具体的な違いは何ですか?SonarQubeとSonarLintの相違

答えて

34

SonarLintは、IDE(IntelliJ、Eclipse、Visual Studio)にのみ存在します。その目的は、コードを入力するときに瞬間的なフィードバックを与えることです。このため、追加または更新するコードに集中します。

SonarQubeは、(SonarQubeのさまざまなスキャナーによってトリガーされる)完全な分析を処理する中央サーバーです。その目的は、コードベースの品質の360度ビジョンを提供することです。このため、プロジェクトのすべてのソース行を定期的に分析します。

SonarLintとSonarQubeの両方は、同じ静的ソースコードアナライザに依存しています。そのほとんどは、SonarSourceテクノロジを使用して書かれています。

+0

ありがとう@Fabrice!しかし、1つのフォローアップの質問。私は、コードベースの同じバージョンのsonarqubeとソナーリントのレポートの違いを見出しています。これは、私がこの質問を書いた最初の問題でした。何が問題になる可能性がありますか? –

+1

両方の世界で同じ品質プロファイル(=ルールセット)を使用していることを確認するには、SonarLintをSonarQubeに「接続」し、ローカルプロジェクト(IDE)をリモートのSonarQubeにバインドする必要があります。 –

+0

Fabriceに感謝します。これはまた、異なるバージョンが異なるルールセットが異なるレポートを正しく与えることを意味する可能性がありますか?同様のバージョンのコードベースのv5.6とv6.0のレポートの違いも同様です。 –

5

SonarQintもサードパーティのアナライザ(findBugs、checkstyle、PMD)でスキャンを実行するのに対し、SonarLint ではが含まれていません。理由はパフォーマンスの優先順位付けであり、Javaバイトコードに依存するfindBugsだと私は思う。

これにより、基礎となる品質プロファイルが第三者のスキャナを使用している場合、SonarQubeとSonarLintの結果は変わる可能性があります。

+1

あなたは正しい@guitarlumです。主な理由は、あなたが言及したものではありませんが、私たちが真にSonarSourceが開発したSonarJava(Javaアナライザ)がPMD + Findbugsよりも優れていると考えてください。 –

関連する問題