sbt:未发现Append.Value [Seq [java.io.File],sbt.Def.Initialize [java.io.File]]的隐式,

swa*_*eed 5 scala sbt

我将sbt从升级sbt-0.13.16sbt-1.2.8我的以下代码已损坏

lazy val gruntDirectory = baseDirectory {
    _ / "public"
}

unmanagedResourceDirectories in Assets += gruntDirectory { _ / "node_modules"}
Run Code Online (Sandbox Code Playgroud)

这是我得到的错误

/build.sbt:131: error: No implicit for Append.Value[Seq[java.io.File], sbt.Def.Initialize[java.io.File]] found,
  so sbt.Def.Initialize[java.io.File] cannot be appended to Seq[java.io.File]
unmanagedResourceDirectories in Assets += gruntDirectory { _ / "node_modules"}
                                       ^
[error] Type error in expression
Project loading failed: (r)etry, (q)uit, (l)ast, or (i)gnore? 
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个问题

lau*_*lic 2

您需要使用.value来提取设置的值:

unmanagedResourceDirectories in Assets += baseDirectory.value / "public" / "node_modules"
Run Code Online (Sandbox Code Playgroud)

如果你想定义gruntDirectory其他东西,你可以这样做:

lazy val gruntDirectory = Def.setting { baseDirectory.value / "public" }

unmanagedResourceDirectories in Assets += gruntDirectory.value / "node_modules"
Run Code Online (Sandbox Code Playgroud)

请注意,您只能在///赋值的.value右侧或内部使用。:=+=++=~=Def.{setting, task, taskDyn, inputTask, inputTaskDyn}