2016-10-24 3 views
1

私は社内のファイアウォールの背後でSBTを実行しようとしています。別のチームがArtifactoryプロキシを設定しました。このプロキシは、匿名アクセスをオンにしても正常に動作しますが、パスワードを要求すると、開始が間違っていると考えられます。Artifactory仮想リポジトリからダウンロードしようとしたときにSBTが認証情報を見つけることができません

私は自分のワークステーション上でSBTを実行すると、私は次のエラーを取得する:.credentialsを入れ

[warn] :::::::::::::::::::::::::::::::::::::::::::::: 
[warn] ::   UNRESOLVED DEPENDENCIES   :: 
[warn] :::::::::::::::::::::::::::::::::::::::::::::: 
[warn] :: org.scala-lang#scala-library;2.10.6: not found 
[warn] :: org.scala-sbt#sbt;0.13.12: not found 
[warn] :: org.scala-lang#scala-compiler;2.10.6: not found 
[warn] :::::::::::::::::::::::::::::::::::::::::::::: 

私が試した:

[error] Unable to find credentials for [Artifactory Realm @ coderepo.xxx.amrs.bigco.com] 

この結果は、私がSBTをブートストラップすることができないということです〜/ .sbtファイルと〜/ .ivy2ファイル:私は以下のバリエーションをテストしていますが、これらはすべて動作しません。

realm=Artifactory Realm @ coderepo.xxx.amrs.bigco.com 
host=coderepo.xxx.amrs.bigco.com 
user=<username> 
password=<pwd> 

私はこのエラーは、レルムをマッチした資格情報の定義を見つけられませんでしたので、私は両方の場所の最初の行のバージョンの数を試みたことを意味推測している:思える

realm=Artifactory Realm 
realm=[Artifactory Realm @ coderepo.xxx.amrs.bigco.com] 
realm=coderepo.xxx.amrs.bigco.com 

なしそのうちすべての影響を与えること。

SBTがユーザ名&でパスワードで保護されたArtifactoryリポジトリへの認証を許可する正しい方法は何ですか?

UPDATE0:アイビーのドキュメントによると、最も可能性の高いレルム名は単に「Artifactoryレルム」です。 SBTのドキュメントによると、資格情報ファイルの正しいデフォルトの場所は、%USERPROFILE%/。sbt/.credentials(はい、私はWindowsを使用しています)でなければなりません。私の.ivy2ディレクトリの.credentialsファイルを削除した後も、それはまだ動作しません。

UPDATE1:実際に役立つ関連ではない:

アップデート2:私はこれはSBTのバグであることを疑うに始めている - Iここに問題が追加されました:https://github.com/sbt/sbt/issues/2817

答えて

7

グローバル資格情報を構成する方法の詳細については、this questionを参照してください。

は、要約すると:

プロキシリポジトリからSBTを起動する必要がある場合は、資格情報ファイルを指すようにシステムプロパティsbt.boot.credentialsを設定します。次の例のように、あなたの%CSIDL_PROGRAM_FILESX86%/sbt/conf/sbtconfig.txtでこれを行うことができます。

-Dsbt.boot.credentials=/Users/my-user-name/.sbt/credentials 

またあなたが同じ目的のためにSBT_CREDENTIALS環境変数を使用することができます。Artifactoryについて

credentialsファイル内のレルムは、に設定されるべきである:credentials設定で%USERPROFILE%/.sbt/0.13/plugins/my-credentials.sbtようなファイルを作成し、依存アーチファクト検索を認証するため

realm=Artifactory Realm 

。例:

credentials += Credentials(Path.userHome/".sbt"/"credentials") 
関連する問題