无法解析 ivy 依赖项:下载错误 com.github.jupyter:jvm-repr:0.4.0

Failed to resolve ivy dependencies: Error downloading com.github.jupyter:jvm-repr:0.4.0

我正在学习SBT编译发布规则。考虑我设置的以下示例项目:

我的 build.sbt 文件如下所示:

name := "example"

version := "0.1"

scalaVersion := "2.13.2"

// almond jupyter api
resolvers += "jvm-repr" at "https://maven.imagej.net/content/repositories/public/"
libraryDependencies += "com.github.jupyter" % "jvm-repr" % "0.4.0"
libraryDependencies += "sh.almond" %% "jupyter-api" % "0.9.1"

我的 Example.scala 文件如下所示:

import almond.interpreter.api.{DisplayData, OutputHandler}

object Example extends App {
    def f1() = {
      DisplayData(
        Map(
          // if we set up an extension for application/myapp+json, first element should be picked
          "application/myapp+json" -> """{"a": "A"}""",
          // else, text/html should be displayed
          "text/html" -> "<b>A</b>"
        )
      )
    }

    println(f1())
}

现在在 sbt shell 我输入:

compile; run

我得到的输出:

DisplayData(Map(application/myapp+json -> {"a": "A"}, text/html -> A),Map(),None)

一切都很好,因为它按预期工作。

现在我在本地发布这个包。在 sbt shell 我输入:

publishLocal

我收到消息说这已经发布到

.ivy2./local/default/example_2.13/0.1

一切都很好。

现在我启动一个 almond.sh 内核,看看我是否可以成功导入我的包并使用它。但是...

我有以下错误:

为什么会这样?该包似乎可以编译和构建,但是当我发布它时却失败了。所以不知何故解析器没有被添加到发布的包中。有人可以向我解释这是怎么回事以及如何解决吗?

在 almond 中,您缺少存储库:"https://maven.imagej.net/content/repositories/public/",您在 sbt 中添加了它。

因为杏仁使用 ammonite this should help:

interp.repositories() ++= Seq(
  coursierapi.MavenRepository
    .of("https://maven.imagej.net/content/repositories/public/")
)