プロジェクトを SBT に移行する際に問題が発生してい0.13
ます。
何らかの理由で、 SBT ドキュメントからのソースの生成のスニペットが機能しません。
残念ながら、単純な.sbt
ビルド定義も Scala ビルド定義も機能しません。プロジェクト定義はドキュメントから取得されます。
name := "sbt-test"
sourceGenerators in Compile += Def.task {
val file = (sourceManaged in Compile).value / "demo" / "Test.scala"
IO.write(file, """object Test extends App { println("Hi") }""")
Seq(file)
}
プロジェクト定義をコンパイルするときに、コンパイラは型エラーについて不平を言います。
~/P/sbt-test ▶ sbt
[info] Loading global plugins from /Users/phearnot/.sbt/0.13/plugins
[info] Loading project definition from /Users/phearnot/Projects/sbt-test/project
/Users/phearnot/Projects/sbt-test/build.sbt:3: error: No implicit for Append.Value[Seq[sbt.Task[Seq[java.io.File]]], sbt.std.FullInstance.M[Seq[java.io.File]]] found,
so sbt.std.FullInstance.M[Seq[java.io.File]] cannot be appended to Seq[sbt.Task[Seq[java.io.File]]]
sourceGenerators in Compile += Def.task {
^
[error] Type error in expression
Project loading failed: (r)etry, (q)uit, (l)ast, or (i)gnore?
更新: AlexIvが私の SBT ファイル定義の問題を指摘したので、それを Scala ビルド定義に移動する適切な方法は何だろうか?