Ответ 1
Я бы сказал, что вам не хватает настроек sbtPlugin := true
в вашем плагине build.sbt
. Это должно сделать ваш плагин опубликован правильно.
Я разрабатываю плагин компилятора SBT с Scala 2.9.2 и SBT 0.12.0.
В моем проекте используется build.sbt
:
name := "myplugin"
version := "0.1-SNAPSHOT"
scalaVersion := "2.9.2"
organization := "com.my.org"
sbtVersion := "0.12.0"
libraryDependencies += "org.scala-lang" % "scala-compiler" % "2.9.2"
После написания плагина я публикую его в своем локальном репозитории Ivy, используя publish-local
, который публикует ~\.ivy2\local\com.my.org\myplugin\0.1-SNAPSHOT
.
Чтобы протестировать плагин, я создал простой проект Hello-World и добавил следующий файл project/build.sbt
:
addSbtPlugin("com.my.org" %% "myplugin" % "0.1-SNAPSHOT")
При попытке загрузить проект с помощью sbt
я получаю ошибку Unresolved Dependency
для этого плагина. Я заметил, что sbt
ищет плагин в ~\.ivy2\local\com.my.org\myplugin\scala_2.9.2\sbt_0.12\0.1-SNAPSHOT
.
Мой вопрос в том, как изменить конфигурацию для включения версий Scala и SBT? Или, поочередно, как мне разрешить разрешение плагина для поиска в нужном месте?
Я бы сказал, что вам не хватает настроек sbtPlugin := true
в вашем плагине build.sbt
. Это должно сделать ваш плагин опубликован правильно.