2017-09-07 10 views
1

SonarLint for CommandLineツール(sonarlint-cli-2.1-RC1)を使用してC#ソースを解析する必要があります。(分析した26ファイル)を表示するには、は問題を:SonarLint CLIからC#の問題をキャプチャする方法

私はSonarScanner(ソナースキャナ-3.0.3.778-窓& sonarqube-6.5)からと同じよう撮影する問題のセットを期待しています、それはとしてログインしていません

-uでSonarLintを呼び出すと、次のように記録されます。プラグインcsharpはSonarLintと互換性がありません。それをスキップします。

しかし、CommandLineの公式WebサイトのSonarLintでは、次のように表示されます。 どの言語がサポートされていますか? - SonarLint CLIは、Java、Javascript、PHP、およびPythonのソースファイルを分析します。 SonarLint CLIをSonarQubeサーバーにバインドすると、サーバーにインストールされている他のSonarSourceアナライザーがダウンロードされ、実行されます。 http://www.sonarlint.org/commandline/#FAQ

これにご相談ください。

答えて

0

エラーメッセージは正しく、SonarLint CLIではSonarC#とSonarVB.NETはサポートされていません。 .NETプロジェクトを分析するには、Visual Studio用のSonarLintまたはMsBuild用のScannerを使用する必要があります。

.NET(C#およびVB.NET)プロジェクトは、コードアナライザを実行するC#/ VB.NETコンパイラ(Roslyn)を使用してコンパイルする必要があります。基本的にRoslynにフックし、そのAPIを使ってコードを分析します。これは、MsBuild分析がmulti-step processで、プロジェクトを分析するためにいくつかのコマンドを実行する理由です。

Java、C++、Pythonなどの非.NET言語用のアナライザーは、独自のパーサーを持ち、追加ステップを必要とせず、SonarLint CLIで容易にサポートされます。

どちらの方法も長所と短所があります。 Roslynアナライザーを作成するには、言語パーサーを作成する必要はありません。既存のインフラストラクチャーを使用するだけです(本当に良いですが)。コンパイラーを実行する必要があります。非.NETアナライザはスタンドアロンであり、コンパイラの依存関係はありませんが、実装するのがはるかに難しい機能(たとえば、1つのファイルで宣言されていないクラスの解析など)があります。

+0

Visual Studio用のSonarLintまたはC#ソース用のMsBuild用のScannerを使用して、SonarLint CLI(スタンドアロンで実行)のような出力レポートを取得できますか? –

関連する問題