在项目中进行了一些依赖项更新后,我最终得到了sbt clean update
scala-reflect
中的两个 lib_managed
版本:
scala-reflect-2.10.0.jar
scala-reflect-2.10.2.jar
因此我在编译时得到了这个可爱的信息:
[error] bad symbolic reference. A signature in package.class refers to term tools
[error] in package scala which is not available.
[error] It may be completely missing from the current classpath, or the version on
[error] the classpath might be incompatible with the version used when compiling
package.class.
sbt版本是0.13.0
如何摆脱这个问题?
我有这种感觉,sbt 0.13.0 Change Notes中的以下条目负责:
sbt不再覆盖依赖项中的Scala版本。这允许独立配置依赖于不同的Scala版本,并将scala-library之外的Scala依赖项视为普通依赖项。但是,对于其他Scala库,它可能会导致除scalaVersion之外的已解析版本。
但我仍然完全不清楚这意味着什么以及应该如何处理这个问题。