首页 > 解决方案 > 在同一个项目中使用 spire 和微风会使 intellij 感到困惑

问题描述

我正在使用 intellij 2018.2 CE,在 scala 2.12.7 项目中,在同一个项目中依赖于 spire 0.14.1 和微风 0.13.2 完全混淆了 intellij 关于我的代码中使用的 spire.algebra 类型类(Ring、Order、Eq , Semiring 等)(找不到符号)

但是,使用 SBT 的命令行构建工作正常。

我注意到微风提供了它自己的 Semiring、Ring 类型类,并且依赖于 spire 0.13.0,这对于 scala 2.12.x 并没有真正意义,但是我没有收到命令行 SBT 构建的依赖冲突警告,所以......

任何帮助表示赞赏

标签: scalaintellij-ideascala-breezespire

解决方案


例如,由于类加载或索引顺序的不同,它可能会在 sbt 中意外工作。如果存在不兼容的版本冲突,最好手动排除 sbt 中的依赖。

例如:

libraryDependendencies += "org.scalanlp" %% "breeze" % "0.13 exclude("org.spire-math", "spire")

推荐阅读