2012年10月23日火曜日

sbt 0.12.Xでscala.tools.nsc.MissingRequirementErrorが出て、compile出来ない件

sbtのバージョンを0.11.3から、0.12.1に上げてみたところ、プロジェクトをコンパイルしようとすると
@sbt console
> compile

[info] Compiling 1 Scala source to PROJECT_PATH\target\scala-2.9.2\classes...
[trace] Stack trace suppressed: run 'last compile:compile' for the full output.
[error] (compile:compile) scala.tools.nsc.MissingRequirementError: object scala not found.
[error] Total time: 0 s, completed 2012/10/23 12:38:06
な感じのエラーが出るようになりました。いろいろ調べた結果、
libraryDependencies := ...
サンプルコード(というほどでもないが;; みたいな感じに、依存ライブラリを上書きしてしまっていることが原因でした。 解決方法は、
  1. :=は使わず、+=や<+=などを使う
  2. :=で上書きした後に、
    libraryDependencies <++= (autoScalaLibrary, sbtPlugin, scalaVersion) apply Classpaths.autoLibraryDependency
    
    で、必要なライブラリを追加する。
のどちらかになります。

0 件のコメント:

コメントを投稿