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

标签 sbt scala.js

我们可以轻松地在 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._

关于sbt - 如何在scalajs项目中导入 `%%%`中的 `Build.scala`?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29473377/

相关文章:

scala - Scala.js 中对 JavaScript 的动态调用

javascript - Scala.js 可以生成 TypeScript d.ts 类型绑定(bind)吗?

scala - 使用:=时,scalajs中出现“illegal start of simple expression”错误

node.js - Scala.js - 从 SBT 运行传递命令行参数

scala - 如何使用 resourceGenerators 复制 Scala.js 源映射?

scala - 使用 uberjar 部署时覆盖 Typesafe 配置中的多个配置值

scala - 如何通过 SBT 发布 Ivy 依赖项?

scala - META-INF/服务应该在 sbt 中的哪里

swing - 斯卡拉 SBT : scala compiler version

scala - 将现有的 sbt 项目导入 IntelliJ