如何在 scalajs 项目中的 `Build.scala` 中导入 `%%%`?

How to import `%%%` in `Build.scala` in a scalajs project?

我们可以在 scalajs 项目的 build.sbt 中轻松使用 %%%,例如:

libraryDependencies +=
  "com.lihaoyi" %%% "utest" % "0.3.0" % "test"

(现场演示:https://github.com/scala-js/scala-js-pickling/blob/master/build.sbt#L92

但是当我尝试使用 project/Build.scala 编写相同的构建文件时,它无法编译,而且我不知道如何导入 %%%:

import org.scalajs.sbtplugin.cross.{CrossType, CrossProject}
import sbt._
import Keys._

object Build extends sbt.Build {

  lazy val crossProject = CrossProject("server", "client", file("."), CrossType.Full)
    .settings(
      /* Shared settings */
      libraryDependencies ++= Seq(
        "io.github.widok" %%% "widok" % "0.2.1", // !!! can't compile
        "com.lihaoyi" %%% "upickle" % "0.2.6")
    )
    .jsSettings(
      /* Scala.js settings */
    )
    .jvmSettings(
      /* JVM settings */
    )

  lazy val js = crossProject.js
  lazy val jvm = crossProject.jvm

}

带有%%%的行不可编译,如何修复它们?

您需要添加以下导入

import org.scalajs.sbtplugin.ScalaJSPlugin.autoImport._

您需要添加以下导入:

import org.portablescala.sbtplatformdeps.PlatformDepsPlugin.autoImport._