首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >更新后未解析的依赖项SBT 0.13.0

更新后未解析的依赖项SBT 0.13.0
EN

Stack Overflow用户
提问于 2013-08-29 15:53:30
回答 3查看 31.1K关注 0票数 16

将SBT更新为0.13.0:

我有几个项目是用Scala 2.10.2编写的,用sbt 0.12.4构建的。因为我的操作系统是Ubuntu,所以我使用SBT.deb包来安装SBT0.12.4。一切都很好。我用sbt构建了我的项目。

昨天我想把sbt更新到0.13.0版本。我下载并安装了新的.deb包。项目配置未更改。

失败的原因:

当在更新之后运行SBT时,我得到了这个失败:

代码语言:javascript
复制
$ sbt
Loading /usr/share/sbt/bin/sbt-launch-lib.bash
Getting org.scala-sbt sbt 0.13.0 ...

:: problems summary ::
:::: WARNINGS
        module not found: org.scala-sbt#sbt;0.13.0

    ==== local: tried

      /home/myUser/.ivy2/local/org.scala-sbt/sbt/0.13.0/ivys/ivy.xml

        ::::::::::::::::::::::::::::::::::::::::::::::

        ::          UNRESOLVED DEPENDENCIES         ::

        ::::::::::::::::::::::::::::::::::::::::::::::

        :: org.scala-sbt#sbt;0.13.0: not found

        ::::::::::::::::::::::::::::::::::::::::::::::



:: USE VERBOSE OR DEBUG MESSAGE LEVEL FOR MORE DETAILS
unresolved dependency: org.scala-sbt#sbt;0.13.0: not found
Error during sbt execution: Error retrieving required libraries
  (see /home/myUser/.sbt/boot/update.log for complete log)
Error: Could not retrieve sbt 0.13.0

~/.sbt/update.log文件可在以下位置获得:http://ubuntuone.com/6RDMgOqMnxdyKgfzrWVUNP ~/.sbt/boot/.update.log文件可在以下位置获得:http://ubuntuone.com/4KqYnSL9Mc1yrmRLbCx6bI

如何修复此依赖项解析?

疑点:

  1. 其他人也有和this类似的问题,但不是一样的。我不认为这是一个构建定义不兼容的问题,你觉得呢?据我所知,SBT没有达到读取项目definition.
  2. From的目的,这个文件应该放在哪里?它不应该包含在SBT安装包中吗?此外,看起来SBT / Ivy确实只查看本地常春藤存储库。Maven Central Repository中没有版本为0.13.0的SBT工件。我必须指定另一个repo或something?
  3. And吗?它不应该在依赖定义中指定吗?我必须在某个地方指定Scala版本吗?

项目配置:

文件:build.sbt

代码语言:javascript
复制
name := "MyProject"

version := "1.0-SNAPSHOT"

organization := "myOrg"

scalaVersion := "2.10.2"

libraryDependencies += "com.github.nscala-time" %% "nscala-time" % "0.4.2"

文件:project/plugins.sbt

代码语言:javascript
复制
addSbtPlugin("com.typesafe.sbteclipse" % "sbteclipse-plugin" % "2.3.0")

文件:project/build.properties

在这个问题之前,我没有这个文件。我添加它是为了解决这个问题:

代码语言:javascript
复制
sbt.version=0.13.0
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-08-29 20:37:52

我在~/.sbt/repositories中添加了一些repos。这就解决了问题。现在,该文件如下所示:

代码语言:javascript
复制
[repositories]
  local
  sbt-releases-repo: http://repo.typesafe.com/typesafe/ivy-releases/, [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext]
  sbt-plugins-repo: http://repo.scala-sbt.org/scalasbt/sbt-plugin-releases/, [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext]
  maven-central: http://repo1.maven.org/maven2/

你也应该看看这个:http://www.scala-sbt.org/0.13.0/docs/Detailed-Topics/Proxy-Repositories.html

但我仍然担心的是,这是我和我的系统的个别情况,还是其他人也有这样的问题。我是不是误解了什么?因为如果我想使用构建工具,我不认为在安装后关心工具的依赖关系是我的责任。这应该由工具本身的安装来完成。

当然,关心项目的依赖关系是我的责任。

票数 51
EN

Stack Overflow用户

发布于 2013-09-05 09:52:22

我遇到了同样的问题,结果是pebcak (当然),在project/build.properties中指定0.13而不是0.13.0

浏览.sbt/boot/update.log中的输出非常有用,并将我引向问题所在(特别是在我注意到sbt在~/ -下载自身时运行正常之后--我注意到它正在寻找的ivy.xml与它在~/中先前尝试下载的那个不匹配)

票数 4
EN

Stack Overflow用户

发布于 2018-01-26 02:49:07

当我在OSX上的Java版本是1.6时,我也遇到了类似的错误消息。更新到1.8版本修复了这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18505176

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档