この二重層の回避策に似たコードをいくつか維持しています。
import AssemblyKeys._
lazy val assemblySettings: Seq[sbt.Project.Setting[_]] = baseAssemblySettings
implicit def wrapTaskKey[T](key: TaskKey[T]): WrappedTaskKey[T] = WrappedTaskKey(key)
case class WrappedTaskKey[A](key: TaskKey[A]) {
def orr[T >: A](rhs: Initialize[Task[T]]): Initialize[Task[T]] =
(key.? zipWith rhs)( (x,y) => (x :^: y :^: KNil) map Scoped.hf2( _ getOrElse _ ))
}
lazy val baseAssemblySettings: Seq[sbt.Project.Setting[_]] = Seq(
test <<= test orr (test in Test).identity,
test in assembly <<= (test in Test).identity,
)
(ここから)。
この回避策の両方の「レイヤー」を完全に削除するにはどうすればよいですか?