gpt4 book ai didi

scala - 尝试从 Artifactory 虚拟存储库下载时,SBT 无法找到凭据

转载 作者:行者123 更新时间:2023-12-04 01:50:51 25 4
gpt4 key购买 nike

我正在尝试在公司防火墙后面运行 SBT。另一个团队配置了一个 Artifactory 代理。这个代理在匿名访问打开的情况下工作正常,但是当我们让它需要密码时,就认为开始出错了。

当我在工作站上运行 SBT 时,出现以下错误:

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

这样做的结果是我无法引导 sbt:
[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] ::::::::::::::::::::::::::::::::::::::::::::::

我试过在 ~/.sbt 和 ~/.ivy2 中放置一个 .credentials 文件:我一直在测试以下变体,所有这些都不起作用:
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 存储库进行身份验证的正确方法是什么?

更新0 :根据 Ivy 文档,最有可能的领域名称只是“Artifactory Realm”。根据 SBT 文档,凭据文件的正确默认位置应该是 %USERPROFILE%/.sbt/.credentials(是的,我使用的是 Windows)。即使删除了我的 .ivy2 目录中的 .credentials 文件,它仍然不起作用。

更新 1 :相关但实际上没有帮助:
  • SBT not passing credentials when publishing to Artifactory
  • Sbt can't authorize in Artifactory

  • 更新2 :我开始怀疑这是 sbt 中的错误 - 我在这里添加了一个问题: https://github.com/sbt/sbt/issues/2817

    最佳答案

    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文件应设置为:

    realm=Artifactory Realm

    为了验证依赖 Artifactory 检索,创建一个类似 %USERPROFILE%/.sbt/0.13/plugins/my-credentials.sbt 的文件。与 credentials环境。例如:

    credentials += Credentials(Path.userHome / ".sbt" / "credentials")

    关于scala - 尝试从 Artifactory 虚拟存储库下载时,SBT 无法找到凭据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40224921/

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