SBT を 0.13.0 に更新します。
Scala 2.10.2 で作成され、sbt 0.12.4 でビルドされたプロジェクトがいくつかあります。私のOSはUbuntuなので、sbt 0.12.4のインストールにはSBT.debパッケージを使用しました。すべて順調です。プロジェクトを sbt でビルドしました。
昨日、sbt をバージョン 0.13.0 にアップデートしたかった。新しい .deb パッケージをダウンロードしてインストールしました。プロジェクト構成は変更されていません。
失敗:
更新後に SBT を実行すると、次のエラーが発生します。
$ 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
この依存関係の解決を修正するにはどうすればよいですか?
容疑者:
他の人もこのような同様の問題を抱えていましたが、同じではありませんでした. これはビルド定義の非互換性の問題ではないと思いますよね? 私が見る限り、SBT はプロジェクト定義を読み取るところまでは行きません。
このファイルはどこから取得する必要がありますか? SBT のインストール パッケージに含めるべきではありませんか? また、SBT / Ivy はローカルの Ivy リポジトリ内のみを検索するようです。Maven セントラル リポジトリには、バージョン 0.13.0 の SBT アーティファクトはありません。別のリポジトリなどを指定する必要がありますか?
そして、Scala バージョンはどうですか? 依存関係定義で指定すべきではないでしょうか? Scala のバージョンをどこかに指定する必要がありますか?
プロジェクト構成:
ファイル: build.sbt
:
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
:
addSbtPlugin("com.typesafe.sbteclipse" % "sbteclipse-plugin" % "2.3.0")
ファイル:project/build.properties
この問題が発生する前は、このファイルがありませんでした。この問題を解決しようとして追加しました:
sbt.version=0.13.0