【问题标题】:SBT can't resolve dependency in build definitionSBT 无法解决构建定义中的依赖关系
【发布时间】:2013-03-15 14:08:08
【问题描述】:

我正在制作一个 SBT 任务,该任务需要向某个服务器发出多部分 POST 请求。我想使用 Dispatch 来提出请求。我在项目顶层的build.sbt 中有以下内容:

libraryDependencies ++= Seq(
  "net.databinder.dispatch" %% "dispatch-core" % "0.9.5"
)

任务定义在project/Build.scala。我有

import sbt._
import Keys._
import dispatch._

object SubmitBuild extends Build {
  ...
}

我收到以下错误消息:

[error] /Users/ken/xxxxtools/project/Build.scala:3: not found: object dispatch
[error] import dispatch._
[error]        ^

如果我删除import dispatch._,那么 sbt 将编译。我知道我已经安装了 Dispatch。为什么 SBT 找不到?

【问题讨论】:

  • 尝试将build.sbtlibraryDependencies 行放在project 文件夹中。另外,这些docs 可以帮助理解项目结构。

标签: scala sbt


【解决方案1】:

如果你想在 Build.scala 中引用一些依赖项,它必须在 build 的项目中声明,而不是在“项目项目”中。这意味着它应该是project/build.sbt

原来project/Build.scala 也是一个 SBT 项目,就像你的项目一样。

SBT 作者在sbt is recursive 中给出了很好的解释。

【讨论】:

    猜你喜欢
    • 2016-02-13
    • 2014-12-18
    • 2010-12-14
    • 2014-01-12
    • 1970-01-01
    • 2013-10-27
    • 2015-10-27
    • 1970-01-01
    • 2018-07-17
    相关资源
    最近更新 更多