The advice from our team was to look into excluding conflicting transitive dependencies using the exclude syntax e.g. in Gradle.
In our Grails codebase we sometimes need to exclude conflicting transitive dependencies introduced by a dependency. E.g.
excludes "org.java-websocket:Java-WebSocket:1.3.8" // Version conflict with com.streamr:client
Hope this helps?