Spring Bootのアプリケーションをテストしていたら「Found multiple occurrences」の警告

こんにちは、さるまりんです。

Spring Bootのアプリケーションでjunitテストを書いて実行していたらこんな警告が出てました。

WARN o.s.b.t.j.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer - 

Found multiple occurrences of org.json.JSONObject on the class path:

	jar:file:/Users/salumarine/.m2/repository/org/json/json/20160212/json-20160212.jar!/org/json/JSONObject.class
	jar:file:/Users/salumarine/.m2/repository/com/vaadin/external/google/android-json/0.0.20131108.vaadin1/android-json-0.0.20131108.vaadin1.jar!/org/json/JSONObject.class

org.json.JSONObjectが複数回読み込まれていそうです。

ちゃんと動いてくれるのですがなんか気持ち悪いです。

これを解決してみました。

pom.xmlのここを

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-test</artifactId>
  <scope>test</scope>
</dependency>

こうしたら

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-test</artifactId>
  <scope>test</scope>
  <exclusions>
    <exclusion>
      <groupId>com.vaadin.external.google</groupId>
      <artifactId>android-json</artifactId>
    </exclusion>
  </exclusions>
</dependency>

警告が消えました。スッキリ〜。

ダブっているのを避ける設定のようですね。

警告はちゃんと動いていても何かしら意味があるからでているのだから無視しないようにしていきたいと思っています。

読んでくださってありがとうございました。

それではまた!