sbt 0.11.2:仅使用公司nexus存储库来存在依赖关系

时间:2012-04-05 15:20:04

标签: sbt

我正在尝试使用typesafe堆栈安装一个sbt实例,只使用我的私有nexus存储库来存储所有依赖项。

但无论我尝试什么,都会从http://repo.typesafe.com/typesafe/releases下载依赖项。我尝试了很多解决方案,尤其是解释hereherehere的解决方案。

我甚至尝试更改sbt-launch.jar中的sbt.boot.properties但没有运气。类型安全堆栈中有什么特殊的东西可以防止在这方面改变sbt行为吗?

顺便说一句,我想将nexus + local用于所有内容,而不仅仅是项目依赖项:依赖项,插件,以及需要下载的所有内容。

2 个答案:

答案 0 :(得分:2)

只是想在sbt 0.12中说,我们特意试图解决这个需求/问题。我们现在完全支持来自启动器的代理存储库 - >项目

基本上,在sbt 0.12.3(播放2.1)中只需创建一个文件:~/.sbt/repositories

[repositories]
  local
  my-ivy-proxy-releases: http://repo.company.com/ivy-releases/, [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext]
  my-maven-proxy-releases: http://repo.company.com/maven-releases/

然后在开始sbt时,我们-Dsbt.override.build.repos=true

您还可以使用-Dsbt.repository.config=<path-to-your-repo-file>

指定不同的代理文件

希望这有帮助! - 乔希

有关详细信息,请参阅:http://www.scala-sbt.org/release/docs/Detailed-Topics/Proxy-Repositories.html

答案 1 :(得分:1)

检查您是否清除了以下文件夹〜/ .sbt的内容,因为它可能包含对类型安全解析程序的引用。

在Build.scala或任何.sbt文件(插件或构建版本)中,确保所有解析器现在都指向您的nexus存储库。

确保您的sbt启动脚本如下所示:

java -Dsbt.boot.properties = sbt.boot.properties -XX:+ CMSClassUnloadingEnabled -XX:MaxPermSize = 256m -Xmx512M -Xss2M -jar dirname $0 / sbt-launch.jar“$ @”

如果这不成功,请告诉我。

Krishnen