git - sbt 如何从 git 中提取依赖项?

我听说(而且我知道我也看过一些例子,只要我记得在哪里)sbt 可以从 git repo 获取依赖项。

我正在寻找依赖 harrah/up来自 github。该存储库不提供任何工件 JAR 文件,仅提供使用 sbt 构建的源代码树。我想象的过程是 sbt 将下载源代码库,构建它,然后将其用作依赖项。

我可能在想象 sbt 实际上可以做这样的事情。它可以?如果有,怎么做?

最佳答案

您可以使用 dependsOn 运算符将未打包的依赖项从 GitHub 导入到您的项目中,方法是将它们视为项目依赖项。 (这与包含预编译库依赖项的方式不同)。

请注意,您可以使用 # 表示法指定要提取的分支。下面是一些适合我的 Scala SBT 代码:

object V {
  val depProject = "master"
  // Other library versions
}

object Projects {
  lazy val depProject = RootProject(uri("git://github.com/me/dep-project.git#%s".format(V.depProject)))
}

// Library dependencies
lazy val myProject = Project("my-project", file("."))
.settings(myProjectSettings: _*)
.dependsOn(Projects.depProject)
.settings(
  libraryDependencies ++= Seq(...

请注意,如果您有多个 SBT 项目依赖于同一个外部项目,则值得设置一个中央 sbt.boot.directory 以避免不必要的重新编译(参见 instructions here)。

https://stackoverflow.com/questions/7550376/

相关文章:

xcode - iOS5 Storyboard错误 : Storyboards are unavai

ios - Xcode 4 : Build Failed, 没有问题

.net - 如何识别 DLL 是 Debug 还是 Release 构建(在 .NET 中)

c# - 无法将目标平台更改为 "any CPU"

build - 使用 msbuild 指定解决方案的项目文件

xcode4 - Xcode 4 在哪里存储方案数据?

maven - Javascript Web 应用程序和 Java 服务器,全部在 Maven 中构

angular - 组件是2个模块声明的一部分

eclipse - 在解决构建路径错误之前,无法构建项目。

android-studio - 此版本的android studio 与使用的gradle 版本不