我正在尝试将一个jar发布到nexus。我正在使用sbt和scala,我有一个配置文件,其中包含所需的凭据。我跑sbt publish
时遇到了麻烦,它给了我未经授权的错误。我需要能够将我的凭据链接到我的sbt构建。我正在尝试将我的配置目标设置为~/.ivy2/.credentials
,但它似乎不起作用。有没有人对如何解决这个问题有任何建议?
感谢。
答案 0 :(得分:5)
您可以将所有凭据文件放在公共目录中,并添加全局配置文件以在sbt中添加所有凭据。
〜/名.bst / 0.13 / credentials.sbt
credentials ++= (Path.userHome / ".sbt" / "credentials")
.listFiles
.collect {
case f if f.isFile => Credentials(f)
}
.toSeq
〜/名.bst /凭证/我的Nexus回购
realm=Sonatype Nexus Repository Manager
host=mynexusrepo.com
user=username
password=password
〜/名.bst /凭证/ MY-artifactory的回购
realm=Artifactory Realm
host=myartifactoryrepo.com
user=username
password=password
答案 1 :(得分:0)
与sbt doc:
类似有两种方法可以为此类存储库指定凭据:
credentials += Credentials("Some Nexus Repository Manager", "my.artifact.repo.net", "admin", "password123")
credentials += Credentials(Path.userHome / ".ivy2" / ".credentials")
凭证文件是包含密钥领域,主机,用户和密码的属性文件。例如:
realm=My Nexus Repository Manager
host=my.artifact.repo.net
user=admin
password=admin123