gpt4 book ai didi

scala - 如何在 sbt 配置中添加 github java 依赖项?

转载 作者:行者123 更新时间:2023-12-04 18:05:30 26 4
gpt4 key购买 nike

我已将此代码添加到我的 Build.scala 中。

  lazy val root = Project("root", file(".")) dependsOn(jbcrypt)
lazy val jbcrypt = RootProject(uri("https://github.com/jeremyh/jBCrypt.git"))

但是 sbt 失败并出现错误:
[error] (root/*:update) sbt.ResolveException: unresolved dependency: default#jbcrypt_2.11;0.1-SNAPSHOT: not found

如何告诉 sbt 它是 Java 而不是 Scala?

如何引用特定的分支或标签?

谢谢你。

最佳答案

仅当引用的项目是 sbt 项目时,才可以从源代码构建项目。 sbt 不知道所有不同的构建系统,那么它怎么知道如何构建一个非 sbt 项目呢?

可以通过 sbt 插件添加对其他构建系统的支持,但这可能需要大量工作。

您引用的项目是一个简单的 Maven 项目,这意味着您可以轻松地从中创建一个 sbt 项目。只需 fork repo 并创建一个 build.sbt具有以下内容:

scalaVersion := "2.11.5"

projectDependencies += "junit" % "junit" % "3.8.1" % "test"

publishTo := {
val nexus = "https://oss.sonatype.org/"
if (isSnapshot.value) Some("snapshots" at nexus + "content/repositories/snapshots")
else Some("releases" at nexus + "service/local/staging/deploy/maven2")
}

这是启动和运行所需的最少代码。 sbt 似乎需要指定一个发布仓库,它似乎也需要一个显式的 Scala 版本。您链接的 Maven 项目已经指定了依赖项。

当然,你知道需要改变 RootProject的URI指向 fork 的位置。

对于您的第二个问题:您可以通过将提交/标签/分支附加到 URI 来引用它,并用 # 分隔。标志:
uri("git://github.com/your/repo#<commit-hash/tag/branch>")

关于scala - 如何在 sbt 配置中添加 github java 依赖项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29448777/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com