Sbt Plugin Добавить зависимость к проекту /build.sbt
У меня есть плагин sbt, который при включении добавляет плагин компилятора скаляка через опции скаляка. Все в порядке с этим.
Однако, если сам плагин компилятора scalac имеет зависимость, которую он должен использовать, я не могу заставить это работать. Я пробовал:
- добавление зависимости к целевым проектам libraryDependencies
- указав его как зависимость в самом плагине sbt.
Я думаю, что мне нужно сделать что-то вроде (это автоматический плагин):
override lazy val projectSettings = Seq(
...
projectsPluginsDependencies ++= Seq(
"com.typesafe" % "config" % "1.2.1" % Compile.name
)
...
)
Если projectsPluginsDependencies был допустимым ключом. Это возможно?
(На самом деле, я даже не уверен, как добавить зависимость вручную в окончательный проект. Если плагину компилятора нужна зависимость X, как вы ее удовлетворяете? Я пытался добавить ее в project / build.sbt, но это не так Работа).
Просто чтобы быть супер ясным - я не спрашиваю, как добавить зависимость, которая нужна sbt-плагину. Я спрашиваю, как добавить зависимость, которая нужна плагину компилятора, которая сама добавляется плагином sbt.
1 ответ
Смотрите раздел Поддержка плагинов компилятора.
autoCompilerPlugins := true
libraryDependencies +=
compilerPlugin("org.scala-lang.plugins" % "continuations" % scalaVersion.value)
scalacOptions += "-P:continuations:enable"
Попробуйте и посмотрите, потянет ли это транзитивные зависимости.