2013-07-30 2 views
5

私はSonarQube用の新しいプラグインを作成しています。これは、開発者がESQLコードの静的コード分析を実行できるようにします。SonarQube - 新しい言語プラグインを作成するのに役立ちます

Mavenを使用すると、SonarQubeに追加するために正しいフォルダに置くことができるJARファイルを生成するプラグインのシェルを構築できます。

次の段階では、ルールのJavaクラスを記述しますが、どのような場所にあるのかはわかりません。私は次のGITリポジトリの例を使用しています:https://github.com/SonarSource/sonar-examples/tree/master/plugins/sonar-reference-plugin

いくつかのクラスで新しいパッケージを作成するだけですか?そして、私は実際にどのようにルールを定めますか?

答えて

3

ESQL言語用のルールエンジンを作成する場合は、まずこの言語用のパーサーを作成する必要があります。この段階を完了した後で、そのパーサーに基づいたルールエンジンを作成します(ASTをナビゲートし、特定の状況下で問題を作成するビジタークラスを使用します)。

あなたは私たちがJavascriptのプラグイン(see the code of version 1.3)実装方法を見取ることができます:「javascriptの-イカ」モジュール

  • がパーサは
  • を書かれている場合、「javascriptの-チェック」モジュールです(パーサーに基づく)ルールエンジンが書かれている
  • "ソナー - javascript-プラグイン"モジュールはパーサーとルールエンジンを組み込み、それらの周りに必要なすべての接着剤を提供する実際のプラグインです。
+0

ありがとう、私は今日それを見ます。私のマネージャーは、複数の正規表現を実行するプラグインを1つのファイルにすべて格納できるかどうかを私に尋ねました。 これが可能であるかどうかは、その周りにすばやく汚い方法の店を持っていますか?まず、ESQLステートメントをチェックして、クライアントのコーディング標準と一致することを確認するだけです –

関連する問題