SonarQube 上で
パッケージ単位で、
環境情報
- OS Version
sw_vers ---------------------------- ProductName: Mac OS X ProductVersion: 10.11.6 BuildVersion: 15G1108 ----------------------------
- SonarQube の
Version 6.1
パッケージ単位で 警告を OFFに する
JPAを
この
思いきって
以下の
pom.xml に sonar.exclusions
を 追加する。
除外対象の
mvn sonar:sonar
を
[1] ファイルパスは
<properties> .... <jpa.ddl-generation>none</jpa.ddl-generation> <sonar.exclusions>src/main/java/xyz/monotalk/models/rdb/entity/*.java</sonar.exclusions> </properties>
プログラム上の 特定の 警告を OFFに する
以下の
@java.lang.SuppressWarnings("squid:S00100")
の@java.lang.SuppressWarnings
を
// NOSONAR
を
java - Turning Sonar off for certain code - Stack Overflow
@java.lang.SuppressWarnings を 使う
以下のように
S00100 は、
@java.lang.SuppressWarnings("squid:S00100") protected <E extends Object> E _new(Class<E> clazz) { return injector.getInstance(clazz); }
// NOSONAR を 使う
以下のように
/** * Constructor */ public EchonestAPIClient() { // Set Up String API_KEY = "XXXXXXXXXXXXXX"; // NOSONAR en = new EchoNestAPI(API_KEY); cmd = new Commander("EchoNestAPI"); Params stdParams = new Params(); stdParams.add("api_key", API_KEY); cmd.setStandardParams(stdParams); }
@java.lang.SuppressWarnings と // NOSONAR の 違いに ついて
1行に// NOSONAR
を
複数の
@java.lang.SuppressWarningsで
@java.lang.SuppressWarnings({"squid:S2078", "squid:S2076"})
と
@java.lang.SuppressWarningsの
個人的には、// NOSONAR
を
考えて
squidの 特定方法
コード上で、
警告の
// NOSONAR 自体に 警告を 出力する
Track uses of "NOSONAR" comments
ルールを
// NOSONAR
自体に
サボり
@java.lang.SuppressWarnings に 警告を 出力する
Track uses of "@SuppressWarnings" annotations
ルールを
@SuppressWarnings
の
こちらは
エンタープライズ向けに
全ルールの
ルールカスタマイズも
[2] ルールの
以上です。
コメント