Spring Boot にApollo Clientを導入しようとした際に、Apolloのバージョンがv2系とv3系があることがわかり、当初v3系にしようとしていたがうまくいかなかった
前提としてSpring Boot は2.5.12を使っていて、古いのは承知しているが今すぐバージョンを上げられないため、このバージョンで動くようにする必要がある
うまくいかなった理由は、Rx3Apollo の部分でランタイム エラーが発生したこと
同じ事象のissueが上がっていたので読むと
github.com
これはspring boot のバージョンと中で使われている kotlinx-coroutines-* のバージョンがアンマッチが原因とわかった
kotlinx-coroutines-* のバージョンが1.6.1
である必要があるが、以下をみると確かに<kotlin-coroutines.version>1.5.2</kotlin-coroutines.version>
が使われている
ということで、spring-bootのバージョンを上げられないので、Apollo Kotlin v2を使うことにした