1

I'm using intellij 2018.2 CE, With a scala 2.12.7 project, having dependencies on spire 0.14.1 and breeze 0.13.2 in the same projet completely confuses intellij about spire.algebra typeclasses used in my code (Ring, Order, Eq, Semiring, etc) (Symbol cannot be found)

Command-line builds with SBT work fine however.

I noticed breeze provides its own Semiring, Ring typeclasses, and has a dependency on spire 0.13.0 which does not really make sense for scala 2.12.x but I get no dependency conflict warnings with command-line SBT builds so...

Any help appreciated

remi
  • 566
  • 3
  • 13

1 Answers1

1

It's possible it works by accident in sbt due to differences in the order of classloading or indexing, for instance. If there is an incompatible version conflict, it's best to manually exclude dependencies in sbt.

For example:

libraryDependendencies += "org.scalanlp" %% "breeze" % "0.13 exclude("org.spire-math", "spire")
Justin Kaeser
  • 5,868
  • 27
  • 46