【问题标题】:Where can I set proxy for SBT in Intellij IDEA?在 Intellij IDEA 中,我可以在哪里为 SBT 设置代理?
【发布时间】:2015-08-31 21:06:42
【问题描述】:

我正在使用Intellij IDEA 14.1.3 版本并安装了Scala 插件。创建SBT项目时报如下错误:

Error:Error while importing SBT project:
...
        ::::::::::::::::::::::::::::::::::::::::::::::

        :: org.fusesource.jansi#jansi;1.11: not found

        ::::::::::::::::::::::::::::::::::::::::::::::


:::: ERRORS
    Server access Error: Connection timed out: connect url=http://repo.typesafe.com/typesafe/ivy-releases/org.fusesource.jansi/jansi/1.11/ivys/ivy.xml

    Server access Error: Connection timed out: connect url=http://repo1.maven.org/maven2/org/fusesource/jansi/jansi/1.11/jansi-1.11.pom

    Server access Error: Connection timed out: connect url=http://repo1.maven.org/maven2/org/fusesource/jansi/jansi/1.11/jansi-1.11.jar


:: USE VERBOSE OR DEBUG MESSAGE LEVEL FOR MORE DETAILS
unresolved dependency: org.fusesource.jansi#jansi;1.11: not found
Error during sbt execution: Error retrieving required libraries
  (see C:\Users\xiaona\.sbt\boot\update.log for complete log)
Error: Could not retrieve jansi 1.11

See complete log in C:\Users\xiaona\.IdeaIC14\system\log\sbt.last.log

在参考了这个post之后,我看到根本原因应该是我使用代理连接互联网。

但是在SBT设置界面:

我找不到设置代理的地方。 Intellij IDEA中的SBT在哪里可以设置代理?

【问题讨论】:

    标签: scala intellij-idea proxy sbt


    【解决方案1】:

    在虚拟机参数中添加-Dhttp.proxyHost=<proxy_server> -Dhttp.proxyPort=<proxy_port>

    阅读documentation了解更多信息

    【讨论】:

    • 我实际上必须添加https.proxyHost https.proxyPort https.proxyUserhttps.proxyPassword 以及
    • @Sergey Lagutin:看来“全局 SBT 设置”没用,对吧?
    • 设置 -> 构建、执行、部署 -> 构建工具 -> SBT -> 全局 SBT 设置 -> JVM 选项 -> VM 参数
    • 这是否意味着应该指定用户和密码并保持清晰?!
    • @mdm 是的,这很糟糕。解决它的可能方法是使用系统变量或其他配置文件
    【解决方案2】:

    基本上有三种设置代理的方法。它们中的每一个似乎都会影响 IDE 的不同部分。

    对于以下所有三种方法,我建议同时设置 httphttps,因为现在大多数与 repos 的连接都是使用 https 建立的:

    -Dhttp.proxyHost=yourProxyAdress 
    -Dhttp.proxyPort=yourPort 
    -Dhttp.proxyUser=yourUsername 
    -Dhttp.proxyPassword=yourPassword 
    -Dhttps.proxyHost=yourProxyAdress
    -Dhttps.proxyPort=yourPort 
    -Dhttps.proxyUser=yourUsername 
    -Dhttps.proxyPassword=yourPassword 
    

    1.构建工具

    在“构建、执行、部署”>“构建工具”>“SBT”>“VM参数”下设置代理会影响编辑build.sbt文件并刷新后者后执行的SBT进程。此外,这用于索引(因此自动完成)。此设置还会影响您在项目设置期间选择的版本中 SBT 本身的下载。

    2。其他设置

    另外,我使用了“其他设置”>“SBT”>“VM参数”下的设置

    3.全局设置代理

    另一种方法是使用JAVA_OPTS 全局设置代理设置,如here 所述。

    【讨论】:

    • InteliJ 2018 版中没有 2)(其他设置)还是我遗漏了什么?
    • 我有“其他设置”,但 SBT 未在其下列出。
    【解决方案3】:

    添加参数VM

    -Dhttps.proxyHost=hostName 
    -Dhttps.proxyPort=portUse 
    -Dhttps.proxyUser=proxyName 
    -Dhttps.proxyPassword=proxyPaword
    

    对我有用

    【讨论】:

      【解决方案4】:

      在我的情况下,我尝试了上述所有解决方案,但它们都不起作用。

      最后我为整个IntellJ配置了HTTP代理,这解决了我的问题。

      Settings > Appearance & Behaviour > System Settings > Http Proxy
      

      【讨论】:

      • 在这里设置对我不起作用 - 它仍然给我一个“连接超时”错误。
      【解决方案5】:

      如果您正在运行基于 sbt 的 scala 项目,您可能需要在项目的运行配置中添加代理: 运行 -> 编辑配置...->->VM 参数

      【讨论】:

        【解决方案6】:

        我看到了同样的错误消息,并尝试了多个(相关)线程中提到的所有建议。通过直接在 IntelliJ 中设置 HTTP 代理,我最终解决了这个问题。这是我的设置的样子(注意:在相应的框中指定您的网络用户名和密码):-

        【讨论】:

          【解决方案7】:

          在我的情况下,似乎有些东西正在获取环境变量 http_proxyhttps_proxy。正确设置(或者在我的情况下,取消设置,因为我不想使用代理)这些变量解决了我遇到的代理错误。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2018-05-07
            • 1970-01-01
            • 2020-10-11
            • 2018-08-03
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2020-08-26
            相关资源
            最近更新 更多