Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
多项目SBT生成错误的符号引用scala reflect运行时_Scala_Sbt_Scala Reflect - Fatal编程技术网

多项目SBT生成错误的符号引用scala reflect运行时

多项目SBT生成错误的符号引用scala reflect运行时,scala,sbt,scala-reflect,Scala,Sbt,Scala Reflect,我的任务是将一个旧的ant构建脚本重写为SBT。碰巧,我们的套件由3个模块组成: Play 2.3前端Web服务器; 用于从各种其他系统检索数据的后端; 一个中间模块,包含一些用于数据库访问和业务逻辑的共享类。 下面是my Build.scala文件的摘录: val sharedSettings = Seq( organization := <organization here>, version := "1.2.5", scalaV

我的任务是将一个旧的ant构建脚本重写为SBT。碰巧,我们的套件由3个模块组成:

Play 2.3前端Web服务器; 用于从各种其他系统检索数据的后端; 一个中间模块,包含一些用于数据库访问和业务逻辑的共享类。 下面是my Build.scala文件的摘录:

val sharedSettings = Seq(
  organization        := <organization here>,
  version             := "1.2.5",
  scalaVersion        := "2.11.1",
  libraryDependencies ++= libraries,
  unmanagedJars in Compile ++= baseDirectory.value / "lib",
  unmanagedJars in Compile ++= baseDirectory.value / "src",
  unmanagedJars in Compile ++= baseDirectory.value / "test"
)

lazy val middle = project.settings(sharedSettings: _*)
lazy val back = project.settings(sharedSettings: _*).dependsOn(middle)
但是,当我尝试编译源代码时,我得到以下错误:

在类文件“ValueConverter.class”中遇到对scala.reflect.runtime的错误符号引用。无法访问包scala.reflect中的术语运行时。当前类路径可能缺少scala.reflect.runtime的定义,或者ValueConverter.class的编译版本可能与当前类路径上的版本不兼容

源代码按以下结构组织:

返回 src 测验 解放党 中间的 src 测验 解放党 正面 src 测验 解放党 在这里,每个lib文件夹都包含一些手动维护的库,这就是为什么我们要移动到sbt


关于如何解决这个问题有什么想法吗?

最后,我放弃了让编译器理解附加库的尝试。最后,我将使用sbt可用的依赖项添加到sbt管理的库中。这显然效果很好

您是否将scala reflect声明为库依赖项?是否有任何理由使用scala 2.11.1而不是2.11.7?ValueConverter来自哪里?它是手动维护的库之一吗?它可能是针对较旧的Scala版本(如2.10)编译的?这里的关键不是你的标题所说的“缺少scala.reflect.runtime”,而是糟糕的符号引用。我曾尝试将reflect添加为依赖项,但不幸的是,这没有帮助。我已根据你的建议更改了标题。我使用2.11.1,因为那是我们之前使用的版本。我不想一次改变太多的设置。我试着把它改成2.11.7,但没用。ValueConverter类实际上是库扇形图的一部分。使用的版本是根据版本2.11.0编译的。将scala版本更改为2.11.0也无济于事: