libraryDependencies для com.eed3si9n#sbt-сборка; 0.13.0: не найден

Я создаю плагин sbt и хочу ссылаться на задачу сборки в плагине sbt-assembly (чтобы зависеть от моей задачи)

для этого мне нужно ссылаться на него как на библиотеку (в отличие от плагина), и почему-то sbt не может решить его как libraryDepdendencies

вот как выглядит мой sbt

sbtPlugin := true

name := "my-sbt-plugin"

scalaVersion := "2.10.6"

sbtVersion := "0.13.0"

resolvers ++= Seq(Resolver.sbtPluginRepo("releases"), Resolver.sbtPluginRepo("snapshots"))

libraryDependencies ++= Seq(
  "com.eed3si9n" % "sbt-assembly" % "0.13.0")

выход выглядит так:

Resolving com.eed3si9n#sbt-assembly;0.13.0 ...
[warn]  module not found: com.eed3si9n#sbt-assembly;0.13.0
[warn] ==== typesafe-ivy-releases: tried
[warn]   https://repo.typesafe.com/typesafe/ivy-releases/com.eed3si9n/sbt-assembly/0.13.0/ivys/ivy.xml
[warn] ==== sbt-plugin-releases: tried
[warn]   https://repo.scala-sbt.org/scalasbt/sbt-plugin-releases/com.eed3si9n/sbt-assembly/0.13.0/ivys/ivy.xml
[warn] ==== local: tried
[warn]   /Users/myuser/.ivy2/local/com.eed3si9n/sbt-assembly/0.13.0/ivys/ivy.xml
[warn] ==== public: tried
[warn]   https://repo1.maven.org/maven2/com/eed3si9n/sbt-assembly/0.13.0/sbt-assembly-0.13.0.pom
[warn] ==== sbt-plugin-releases: tried
[warn]   https://repo.scala-sbt.org/scalasbt/sbt-plugin-releases/com.eed3si9n/sbt-assembly/0.13.0/ivys/ivy.xml
[warn] ==== sbt-plugin-snapshots: tried
[warn]   https://repo.scala-sbt.org/scalasbt/sbt-plugin-snapshots/com.eed3si9n/sbt-assembly/0.13.0/ivys/ivy.xml
[info] Resolving org.fusesource.jansi#jansi;1.4 ...
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn]  ::          UNRESOLVED DEPENDENCIES         ::
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn]  :: com.eed3si9n#sbt-assembly;0.13.0: not found
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::

5 ответов


он не разрешен, потому что вы не указали версию scala. Это должно быть что-то вроде:

libraryDependencies ++= Seq(
    "com.eed3si9n" % "sbt-assembly_2.11" % "0.13.0"
)

или, чтобы автоматически получить версию scala, используемую в проекте:

libraryDependencies ++= Seq(
    // notice the double %% here
    "com.eed3si9n" %% "sbt-assembly" % "0.13.0"
)

но sbt-assembly не должен быть установлен таким образом. The документы показывают что вы должны добавить следующую строку project/plugins.sbt вместо:

addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.2")

при разработке плагина sbt,addSbtPlugin линия должна пойти сразу в ./build.sbt.


в моем случае исправление версии сборки sbt из 14.3 до 14.5 сделал свое дело. Пожалуйста, проверьте, что ваше и попробуйте это.

Так и в сборка проекта.sbt , это было как-

addSbtPlugin ("com.eed3si9n " % "sbt-сборка" % "0.14.3")

затем я изменил его на-

addSbtPlugin ("com.eed3si9n " % "sbt-сборка" % "0.14.5")

надеюсь, что это помогает!


в дополнение к вышеуказанным предложениям мне пришлось добавить

resolvers += Resolver.url("bintray-sbt-plugins", url("http://dl.bintray.com/sbt/sbt-plugin-releases"))(Resolver.ivyStylePatterns)

в проект/Плагины.sbt.


он не разрешен для Scala-2.12.

добавьте следующую строку в project/plugins.sbt -

addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.5")
resolvers += Resolver.url("bintray-sbt-plugins", url("http://dl.bintray.com/sbt/sbt-plugin-releases"))(Resolver.ivyStylePatterns)

, чтобы найти правильный путь, попробуйте следующее -

https://dl.bintray.com/sbt/sbt-plugin-releases/com.eed3si9n/sbt-assembly/scala_<version>/

Итак, используя версию 2.12, разрешимый путь можно найти, как показано ниже -

https://dl.bintray.com/sbt/sbt-plugin-releases/com.eed3si9n/sbt-assembly/scala_2.12/sbt_1.0/0.14.5/ivys/

У меня были те же проблемы, все, что я сделал, это удалить ==>

addSbtPlugin ("com.eed3si9n "% % "sbt-сборка" % "0.14.5")

линия сборки.sbt и скопирован в другой файл с именем assembly.sbt на том же уровне проекта, где и build.СБТ есть.

Он разрешил ошибку.(После 3 часов чтения всех сообщений в интернете. : -))