Windows 7 如何在Windows7中从代理后面使用sbt?

Windows 7 如何在Windows7中从代理后面使用sbt?,windows-7,sbt,http-proxy,Windows 7,Sbt,Http Proxy,我正在尝试在Windows 7上运行SBT。为此,我遵循了类似线程“”中的步骤 我有以下相关的“系统变量”: 变量名: JAVA_选项 变量值: -Dhttp.proxySet=true-Dhttp.proxyHost=192.168.0.150-Dhttp.proxyPort=8080 变量名: SBT\u选项 变量值: -Dhttp.proxySet=true-Dhttp.proxyHost=192.168.0.150-Dhttp.proxyPort=8080 及 变量名: SBT\u HO

我正在尝试在Windows 7上运行
SBT
。为此,我遵循了类似线程“”中的步骤

我有以下相关的“系统变量”:

变量名:
JAVA_选项
变量值:
-Dhttp.proxySet=true-Dhttp.proxyHost=192.168.0.150-Dhttp.proxyPort=8080

变量名:
SBT\u选项
变量值:
-Dhttp.proxySet=true-Dhttp.proxyHost=192.168.0.150-Dhttp.proxyPort=8080

变量名:
SBT\u HOME
变量值:
C:\ProgramFiles(x86)\sbt\

我还更改了
C:\ProgramFiles(x86)\sbt\conf\sbtconfig.txt的内容

*****sbtconfig.txt开始*****

*将java参数设置为高

-Xmx512M

-XX:MaxPermSize=256m

-XX:ReservedCodeCacheSize=128m

*设置额外的SBT选项

-Dsbt.log.format=true

*设置代理

-Dhttp.proxySet=true

-Dhttp.proxyHost=192.168.0.150

-Dhttp.proxyPort=8080

*****sbtconfig.txt结束*****

运行
cmd.exe
I输入
sbt
。cmd回声

正在获取org.fusesource.jansi jansi 1.11

大约1分钟后,我收到许多警告和错误,如:

[……]

::错误服务器访问错误:连接超时:连接 网址=

[……]

这与我在没有代理设置的情况下得到的完全相同。此外,当我在浏览器中输入提到的地址时,我感到惊讶,我得到的只是:

*****浏览器显示开始*****

{

“错误”:[{

“状态”:404

“消息”:“未找到文件。”

}]

}

*****浏览器显示端*****


如何确定SBT是否正在尝试使用代理,或者是否存在其他问题?

让我们看看您的错误:

:::: ERRORS Server access Error: Connection timed out: connect url=https://repo.typesafe.com/typesafe/ivy-releases/org.fusesource.jansi/jansi/1.11.ivys/ivy.xml
Sbt正在尝试使用https,但您没有它的代理配置。 尝试设置https代理变量:

  • https.proxyHost
  • https.proxyPort

我想您可以尝试与http代理相同的值。

谢谢您的回答

这是我发现的:

-Dhttp.proxySet=true
”没有任何效果(至少对我而言)

设置按以下顺序排列优先级:

SBT_选项覆盖JAVA_选项覆盖%SBT_HOME%conf\sbtconfig.txt

解决方案是设置一个环境变量

JAVA_OPTS=-Dhttp.proxyHost=192.168.0.150 -Dhttp.proxyPort=8080 -Dhttps.proxyHost=192.168.0.150 -Dhttps.proxyPort=8080 -Dhttp.nonProxyHosts=localhost

或编辑%SBT_HOME%conf\sbtconfig.txt文件:

***** sbtconfig.txt BEGINNING (hashtags in this file have been replaced by stars) *****

*Set the java args to high

-Xmx512M

*-XX:MaxPermSize=256m

-XX:ReservedCodeCacheSize=128m

*Set the extra SBT options

-Dsbt.log.format=true

*Proxy settings

-Dhttp.proxyHost=192.168.0.150 

-Dhttp.proxyPort=8080

-Dhttps.proxyHost=192.168.0.150 

-Dhttps.proxyPort=8080

***** sbtconfig.txt END *****

转到您的SBT文件夹并使用以下命令

set SBT_OPTS=-Dhttp.proxyHost=10.10.10.154 -Dhttp.proxyPort=8080 -Dhttps.proxyHost=10.10.10.154 -Dhttps.proxyPort=8080 -Dhttp.nonProxyHosts=localhost <Enter your IP settings >

sbt使用Gigahorse和OkHttp进行并行下载。您可以尝试通过传递-Dsbt.gigahorse=false来关闭它

您可以尝试的另一件事是关闭https,并通过传递-Dsbt.repository.secure=false来使用http


参考资料:

谢谢!我直接在/usr/share/sbt/conf中的sbtopt文件中添加了代理设置/
set SBT_OPTS=-Dhttp.proxyHost=10.10.10.154 -Dhttp.proxyPort=8080 -Dhttps.proxyHost=10.10.10.154 -Dhttps.proxyPort=8080 -Dhttp.nonProxyHosts=localhost <Enter your IP settings >
sbt.bat