Gradle:build scanの使い方、その2

Gradle:build scanの使い方、その1の続きである。

Gradleを使っていて本当に困ることは、推移的依存によって引っ張ってこられるライブラリの中に余計なものがあることだ。これには二つのケースがある。

  • そもそも入ってきてほしくない。
  • 入ってきて欲しいのだが、バージョンが違う。

いずれにしても、これを排除しなくてはいけない。

犯人を探す

いま「gwt-dev.2.8.0」が余計なライブラリだとする。

build scanのdependenciesを見てみる。ここの検索機能を使う。

「gwt-」と入力してみると、gwt-dev.2.8.0が見つかる。

カーソルを持っていくと、オープンスイッチが表示される。

これを押して、「Required By」タブを開くと、犯人がわかる。

gwt用のWebSocketライブラリでgwt-devが指定されていることがわかる。

解決する

gwt-websocketsがgwt関連のライブラリを引っ張ってくるのをやめさせる。

“`
dependencies {
….
compile(group: ‘org.realityforge.gwt.websockets’, name: ‘gwt-websockets’, version: ‘1.2’) {
exclude group:’com.google.gwt’
}
}