簡體   English   中英

無法使用Scala的sbt從存儲庫中獲取插件

[英]Can't fetch plugins from repositories with scala's sbt

我嘗試使用sbt編譯/構建scala項目,project / plugins.sbt中提到了兩個插件:

addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.6.17")
addSbtPlugin("com.typesafe.sbt" % "sbt-native-packager" % "1.3.4")

導入sbt項目時出錯:

[error] sbt.librarymanagement.ResolveException: download failed: 
com.typesafe.play#sbt-plugin;2.6.17!sbt-plugin.jar
[error] download failed: com.typesafe.sbt#sbt-native-packager;1.3.4!sbt-native- 
packager.jar

似乎在存儲庫的證書中存在該問題,因此我手動獲取了每個證書,並使用命令將其添加到我的密鑰庫中( 我使用ubuntu ):

keytool -import -alias "artifact server2" -keystore /usr/lib/jvm/java-8-oracle/jre/lib/security/cacerts -file _.bintray.com

但這沒有幫助。

更新:我通過手動將來自回購方主機的所有證書(結束和中間)添加到本地密鑰庫中,解決了我的問題。

這個問題使我幾乎准備將Macbook扔到窗外。

在我的Mac上,java cacerts位於此處:

/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/jre/lib/security/cacerts

為了獲得sbt-native-packager所需的證書,我使用了此證書(我從某人那里偷走了,現在找不到屬性):

echo -n | openssl s_client -connect repo.scala-sbt.org:443 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > /tmp/scala-sbt.cert

然后將其添加到Java信任庫中,我使用了上面的Stanislav解決方案:

sudo keytool -import -alias "scala-sbt server" -keystore /Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/jre/lib/security/cacerts -file /tmp/scala-sbt.cert

請記住,cacerts文件的默認密碼為changeit

然后,下次我運行sbt時,下載了該插件,我幾乎流下了喜悅的眼淚。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM