scala – SBT 0.13.11无法下载代理后面的依赖项
在代理服务器后面使用Windows 7,64bit.
我已下载并安装了最新版本的SBT(0.13.11),Scala(2.11.8)和IntelliJ IDEA社区(2016.1.2).当我尝试在IntelliJ中启动一个新项目时,我可以使用的最新版SBT是0.13.8,而不是0.13.11.有谁知道为什么会这样?如果我尝试启动一个新项目,我会收到一个错误:
经过一段时间的修补,我发现当我在终端输入sb??t时,我被告知我有SBT版本0.13.8,它是针对Scala 2.10.4构建的.这看起来不对劲!如果我进入IntelliJ并选择SBT构建为0.13.8并将Scala构建为2.10.4,则不会出现错误! 所以,这非常令人困惑,因为不清楚代理是否是问题.好像我可以将SBT更新到版本0.13.11,整个过程都可行. 任何见解或帮助将不胜感激 – 我很高兴学习Scala,但这些技术困难阻止了我. 编辑:当我在项目目录中运行sbt compile时,我收到以下输出: 解决方法
你的sbt输出有一条红线:
[error] Server access Error: Connection refused: connect url=https://repo1.maven.org/maven2/org/scala-lang/scala-library/2.11.8/scala-library-2.11.8.pom 之所以发生这种情况,是因为您在代理服务器后面,从版本0.13.9开始,sbt默认情况下使用https进行所有连接. sbt 0.13.8仍然使用http,这就是为什么这个问题不会在这个版本中出现的原因. 解决此问题的最简单方法是修改sbt.bat脚本并在命令行中添加一个参数来启动sbt可执行文件: -Dsbt.repository.secure=false 此命令强制sbt使用http代替. 一个看似更正确但更复杂的修复方法包括从您使用的maven存储库手动提取https证书,以及使用keytool将它们安装到JDK的cacerts密钥库中 – 但是这种复杂的方式似乎并不涵盖所有情况,同时转向https完全像魅力一样工作. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |