【问题标题】:Should I include scala-compiler as a dependency in build.sbt?我应该在 build.sbt 中包含 scala-compiler 作为依赖项吗?
【发布时间】:2016-01-29 14:10:39
【问题描述】:

我正在尝试在 intellij 中使用 scala 2.11.7 构建一个项目。我已经将scalaVersion 设置为2.11.7,但是当我检查外部库时,我可以看到scala-compiler:2.11.0

我需要将scala-compiler:2.11.7 声明为build.sbt 中的依赖项吗? docs 令人困惑,似乎在连续的段落中说我确实需要而不是:

当使用标准库以外的 Scala 依赖时,添加它 作为正常的托管依赖项。例如,依赖 Scala 编译器,

libraryDependencies += "org.scala-lang" % "scala-compiler" % scalaVersion.value

为了编译 Scala 代码,运行 scaladoc,并提供一个 Scala REPL,sbt 需要 scala-compiler jar。这不应该是正常的 项目的依赖,所以 sbt 添加了对 scala-compiler 的依赖 在特殊的私有 scala-tool 配置中。

所以...我应该添加还是不添加?

【问题讨论】:

    标签: scala intellij-idea sbt


    【解决方案1】:

    如果您的项目代码使用scala-compiler(例如,解析或编译 Scala 代码、运行 REPL 等),请添加它。否则,不要。这就是为什么第一句话说“使用标准库以外的 Scala 依赖项......”

    外部库中显示的scala-compiler 可能存在,因为您的其他依赖项之一依赖于它(并且该版本是使用 Scala 2.11.0 编译的)。

    【讨论】:

    • 那么为什么我会在我的外部库中看到 scala-compiler:2.11.0 呢?那个 jar 实际上是用来编译我的项目的吗?我可以看到 scala-library:2.11.7,所以也许编译器自 2.11.0 以来没有更新(似乎牵强)?
    • 查看编辑(实际上是在看到您的评论之前添加的)。
    猜你喜欢
    • 2010-09-18
    • 1970-01-01
    • 2019-09-08
    • 1970-01-01
    • 1970-01-01
    • 2021-08-11
    • 2018-11-19
    • 2021-07-30
    • 1970-01-01
    相关资源
    最近更新 更多