【问题标题】:How to add repositories which require authentication in sbt project如何在 sbt 项目中添加需要身份验证的存储库
【发布时间】:2019-09-08 17:50:15
【问题描述】:

this site 获得帮助,我在我的build.sbt 文件中添加了类似的内容,以便能够访问一些私有的Maven 存储库。但是,这些存储库还需要用户名和密码进行身份验证。如何在此处添加?

resolvers ++= Seq(
   "PrivateRepo1" at "http://privaterepo1/releases/",
   "PrivateRepo2" at "http://privaterepo2/maven/2/"
)

我什至尝试在上面添加这个,但仍然无法使其工作。

credentials += Credentials("PrivateRepo1", 
  "http://privaterepo1/releases/", "<uname>", "<password>")
credentials += Credentials("PrivateRepo2", 
  "http://privaterepo2/maven/2/", "<uname>", "<password>")

请注意,这些私有存储库托管在 Nexus repository manager

【问题讨论】:

    标签: scala maven sbt


    【解决方案1】:

    添加凭据时,应仅指定主机:

    credentials += Credentials(
      "PrivateRepo1", 
      "privaterepo1.com",
      "<uname>",
      "<password>"
    )
    

    不相关,避免在代码中指定凭据。
    例如,您可以从环境变量中读取凭据

    credentials += Credentials(
      "PrivateRepo1", 
      "privaterepo1.com",
      sys.env.getOrElse("private_repo_user", "Unknown"),
      sys.env.getOrElse("private_repo_pass", "Unknown")
    )
    

    【讨论】:

    • 是的,我也只试了主机,但还是不行。存储库在特定端口上工作无济于事。所以我也尝试了privaterepo1.com:portnumber,但还是不行。
    • 你不应该把ip。你的领域是正确的吗?例如“Sonatype Nexus”或“Sonatype Nexus Repository Manager”?
    • 可能是领域的错。我会检查的。
    猜你喜欢
    • 2013-09-27
    • 2010-11-19
    • 2015-02-21
    • 1970-01-01
    • 2017-09-02
    • 2015-12-26
    • 2016-09-05
    • 2020-01-23
    • 2021-06-03
    相关资源
    最近更新 更多