SBT 插件 %%% 在哪里定义?
SBT Plugin Where is %%% defined?
我有一个 SBT 插件,它会在编译前自动生成一些 Scala.js 代码。此代码取决于一个库,我希望在启用插件时自动包含该库。
这编译并运行,但没有得到库的 Scala.js 版本:
import sbt._
import Keys.libraryDependencies
object MyPlugin extends AutoPlugin {
object autoImport {
lazy val baseSettings: Seq[Def.Setting[_]] = Seq(
libraryDependencies += "my.lib" %% "library" % "0.1.0"
)
}
import autoImport._
override lazy val projectSettings = baseSettings
}
当我尝试使用 "my.lib" %%% "library" % "0.1.0"
时,我得到:
value %%% is not a member of String
我觉得我可能缺少导入,但我找不到它应该定义的位置。
%%%
由 the sbt-platformdeps plugin.
定义
除非您的 sbt 插件已经依赖于 sbt-scalajs,否则您需要在插件项目的 settings
:
中添加依赖项
addSbtPlugin("org.portable-scala" % "sbt-platform-deps" % "1.0.0")
以下导入将其纳入范围:
import org.portablescala.sbtplatformdeps.PlatformDepsPlugin.autoImport._
addSbtPlugin("com.lightbend.lagom" % "lagom-sbt-plugin" % "X.Y.Z") // 将 'X.Y.Z' 替换为您喜欢的版本(例如 '1.2.0- RC2').
你可以参考这个
https://www.lagomframework.com/documentation/1.6.x/java/LagomBuild.html
我有一个 SBT 插件,它会在编译前自动生成一些 Scala.js 代码。此代码取决于一个库,我希望在启用插件时自动包含该库。
这编译并运行,但没有得到库的 Scala.js 版本:
import sbt._
import Keys.libraryDependencies
object MyPlugin extends AutoPlugin {
object autoImport {
lazy val baseSettings: Seq[Def.Setting[_]] = Seq(
libraryDependencies += "my.lib" %% "library" % "0.1.0"
)
}
import autoImport._
override lazy val projectSettings = baseSettings
}
当我尝试使用 "my.lib" %%% "library" % "0.1.0"
时,我得到:
value %%% is not a member of String
我觉得我可能缺少导入,但我找不到它应该定义的位置。
%%%
由 the sbt-platformdeps plugin.
除非您的 sbt 插件已经依赖于 sbt-scalajs,否则您需要在插件项目的 settings
:
addSbtPlugin("org.portable-scala" % "sbt-platform-deps" % "1.0.0")
以下导入将其纳入范围:
import org.portablescala.sbtplatformdeps.PlatformDepsPlugin.autoImport._
addSbtPlugin("com.lightbend.lagom" % "lagom-sbt-plugin" % "X.Y.Z") // 将 'X.Y.Z' 替换为您喜欢的版本(例如 '1.2.0- RC2').
你可以参考这个 https://www.lagomframework.com/documentation/1.6.x/java/LagomBuild.html