Плагин ScalaJS 0.6.23: «значение %%% не является членом String» - PullRequest
0 голосов
/ 09 июня 2018

После миграции на ScalaJS 0.6.23 из 0.6.21:

(addSbtPlugin("org.scala-js" % "sbt-scalajs" % "0.6.23"))

Мой sbt -билд выдает следующее исключение:

...
[error] /Users/mpa/dev/Github/pme123/scala-adapters/project/Settings.scala:88:20: value %%% is not a member of String
[error]     "org.scala-js" %%% "scalajs-dom" % "0.9.6"
[error]                    ^
[error] /Users/mpa/dev/Github/pme123/scala-adapters/project/Settings.scala:90:27: value %%% is not a member of String
[error]     , "com.typesafe.play" %%% "play-json" % "2.6.1"
...

Это значение из Settings.scala:

  lazy val clientDependencies: Seq[Def.Setting[_]] = Def.settings(libraryDependencies ++= Seq(
    "org.scala-js" %%% "scalajs-dom" % "0.9.6"
    , "org.scala-lang.modules" %% "scala-xml" % "1.0.6"
    , ...
  ))

И вот как оно используется в build.sbt:

lazy val client = (project in file("client"))
  .settings(sharedSettings(Some("client")))
  .settings(clientSettings)
  .settings(clientDependencies)
  .settings(jsSettings)
  .enablePlugins(ScalaJSWeb)
  .dependsOn(sharedJs)

Это проект: https://github.com/pme123/scala-adapters

1 Ответ

0 голосов
/ 09 июня 2018

Примечания к выпуску в Scala.js 0.6.23 говорят о том, что

Использование %%% в .scala файлах сборки sbt (под project/)нужен новый импорт:

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

Для .sbt файлов этот импорт добавляется автоматически, поэтому ничего не меняется.

Так что вам нужно добавить

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

в вашем файле Settings.scala.

...