私はSONAR QUBE分析を実行するJenkinsジョブを作成しました。 SONARスキャンを一般的なビルドステップとして追加しました。 プロジェクトでSONARを気にする必要がないため、SONAR統合を有効にするためにプロジェクトを変更していません。 (つまり、POM.xmlは変更されず、プロパティファイルは追加されません)プロジェクトを変更せずにJenkinsのマルチモジュールプロジェクトでSonar Qubeをスキャンする
私のSONAR統合は、プロジェクトに必要な改造なしで機能します。
しかし、これはマルチモジュールプロジェクトです。このモジュールには自動生成コードが含まれているため、スキャンの1つを除外したいと考えています。 ここでMavenのは、私はジェンキンスでSONARスキャンをトリガするために使用しているというコマンドです:私はスキャンからProjectBのを除外したい
root
Project A
Project B
Project C
:
sonar:sonar
-Dsonar:host.url=http://url.com:9000/sonar
-Dsonar.login=myusername
-Dsonar.password=mypassword
は、ここに私のプロジェクト構造です。
私は-Dsonar.exclusions=/ProjectB
を試しましたが動作しませんでした。ここで
は、ログからの抜粋です。
[INFO] ------------- Scan Project B
[INFO] Base dir: /workspace/jenkins/…/workspace/CI-JOB-NAME/projectB
[INFO] Working dir: /workspace/jenkins/…/workspace/CI-JOB-NAME/projectB/target/sonar
[INFO] Source paths: pom.xml, src/main/java
[INFO] Binary dirs: target/classes
[INFO] Source encoding: UTF-8, default locale: en_US
[INFO] Index files
[INFO] Excluded sources:
[INFO] /projectB
[INFO] 44 files indexed
[INFO] 0 files ignored because of inclusion/exclusion patterns
ログに示すように、除外ソースプロパティが設定されますが動作していない、それが0のファイルは無視と言うので、...
質問:スキャンからプロジェクトBディレクトリ内のすべてを除外しますか? (Jenkinsジョブのコマンドを使用し、プロジェクトファイルにプロパティファイルやその他の変更を追加しないことが望ましい)「除外ソースパス」は「ベースディレクトリ」パスまたはルート? 除外パスを絶対パスとして定義する必要がありますか?
ありがとう、問題解決済み!私は両方の-plオプションと推奨パターンを使って除外パスを定義しようとしましたが、両方のオプションが機能しました! – user7435526