我正在開發一個簡單的SBT項目,其中包含用於基準測試Scala Parallel集合的InputTasks。如何更改構建定義的Scala版本?
我已經定義了InputKeys,並在遇到問題時開始編寫任務。
由於我的基準要求斯卡拉2.10.0-M5,我試着在我build.sbt
這樣做:
name := "scala-parallel-collection-benchmark"
version := "1.0.0"
organization := "com.google.summer"
scalaVersion := "2.10.0-M5"
然而,在編譯時我收到以下錯誤:
[info] Loading project definition from C:\Users\Administrator\scala-parallel-collection-benchmark\project
[info] Compiling 1 Scala source to C:\Users\Administrator\scala-parallel-collection-benchmark\project\target\scala-2.9.1\sbt-0.11.3\classes...
[error] C:\Users\Administrator\scala-parallel-collection-benchmark\project\Build.scala:47: value tasksupport is not a member of scala.collection.parallel.mutable.ParArray[Int]
[error] collection.tasksupport = new ForkJoinTaskSupport(new ForkJoinPool(par))
[error] ^
[error] one error found
[error] {file:/C:/Users/Administrator/scala-parallel-collection-benchmark/project/}default-e0b2a2/compile:compile: Compilation failed
它似乎仍然使用Scala 2.9.1來編譯它。
如何設置SBT,以便使用Scala 2.10.0-M5編譯我的代碼?
要清楚:你真的想用Scala 2.10編寫你的BUILD定義嗎?該錯誤是在項目/ Build.scala,它應該包含您的項目定義,而不是實際的源代碼。這與編譯與斯卡拉版本sbt是與內置的,而不是與您指定的一個與scalaVersion,這是在src/... – themel 2012-08-14 08:03:01
的東西你可能想要張貼作爲答案,所以我可能會接受它:D – Lopina 2012-08-14 08:38:21
非常感謝,快樂的GSoC :) – themel 2012-08-14 16:50:07