2

私は、100 以上の依存関係をコンパイルする sbt 0.13.5 プロジェクトに取り組んでいます。typesafe.comここ韓国から/ scala-sbt.org/のようなサーバーに到達するのに ~1 秒かかるmaven.orgため、依存関係の解決が完了するまでに数時間かかります。そこで、次のようにして、ローカル ネットワークにインストールされたアーティファクトミラーを使用するように sbt を設定することができました。

~/.sbt/repositories次のように保存します。

[repositories]
  local
  ivy-proxy-releases: http://artifactory.local:8088/artifactory/ivy-release, [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext]
  maven-proxy-releases: http://artifactory.local:8088/artifactory/libs-release
  maven-proxy-shapshots: http://artifactory.local:8088/artifactory/libs-snapshot

● の先頭に次の行を追加します。~/.sbt/0.13/plugins/build.sbt

sbtResolver := Resolver.url("ivy proxy repo", url("http://artifactory.local:8088/artifactory/ivy-release"))(Resolver.ivyStylePatterns)

● 同じ行をローカル プロジェクト ディレクトリの./project/plugins.sbt

これらを行うことで、依存関係の jar をプルするのにかかる時間を大幅に短縮できましたが、sbt はまだアクセスrepo.scala-sbt.orgしておりrepo.typesafe.com、404 を取得するだけでした (大きな待ち時間がありました)。

/etc/hostsそのため、これらのドメインをダミーの Web サーバーに向けるトリックを行った後で初めて、最短のビルド時間を達成することができました。(すべての依存関係をプルしてplay-scalaサンプルをコンパイルするのに約 2 分)

sbt がリポジトリとリポジトリを完全に忘れてscala-sbttypesafe構成されたローカル プロキシでのみ動作するようにする設定はありますか?

4

1 に答える 1

2

ここに示すように、sbt.override.build.repos の設定でビルド リポジトリをオーバーライドできます: sbt doc同様の質問への回答もあります。

于 2014-07-22T10:21:31.313 に答える