我有一个 sbt-plugin,当启用时,它会通过 scalac 选项添加一个 scalac 编译器插件。一切都很好。
但是,如果 scalac 编译器插件本身有一个需要使用的依赖项,我就无法让它工作。我试过了:
我认为我需要做的是(它是一个自动插件):
override lazy val projectSettings = Seq(
...
projectsPluginsDependencies ++= Seq(
"com.typesafe" % "config" % "1.2.1" % Compile.name
)
...
)
如果 projectsPluginsDependencies 是一个有效的键。这可能吗?
(事实上,我什至不确定如何将依赖项手动添加到最终项目中。如果编译器插件需要依赖项 X,您如何满足它?我尝试将其添加到 project/build.sbt 中,但没有工作)。
只是要非常清楚 - 我不是在问如何添加 sbt-plugin 需要的依赖项。我在问如何添加编译器插件需要的依赖项,它本身是由 sbt-plugin 添加的。
最佳答案
autoCompilerPlugins := true
libraryDependencies +=
compilerPlugin("org.scala-lang.plugins" % "continuations" % scalaVersion.value)
scalacOptions += "-P:continuations:enable"
尝试看看这是否会引入传递依赖。
关于Sbt Plugin 添加依赖到 project/build.sbt,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24972955/