NuGet上的mono后代理无法连接到互联网

本文关键字:连接 互联网 代理 上的 mono NuGet | 更新日期: 2023-09-27 17:53:07

我在公司代理后面有一台Linux机器。

对于代理,我已经设置了CNTLM来为我处理身份验证,所以我的代理位于http://localhost:3128。CNTLM连接到使用NTLMv2的企业代理。

现在,当我尝试在Mono上使用以下命令运行Nuget时:

mono .nuget/nuget.exe list -Verbosity detailed -ConfigFile .nuget/NuGet.Config

显示如下错误:

System.TypeInitializationException: An exception was thrown by the type initializer for NuGet.ProxyCache ---> System.ArgumentException: parsing '*.intranet' - Quantifier {x,y} following nothing. at System.Text.RegularExpressions.RegexParser.ScanRegex () [0x00000] in <filename unknown>:0 at System.Text.RegularExpressions.RegexParser.Parse (System.String re, RegexOptions op) [0x00000] in <filename unknown>:0 at System.Text.RegularExpressions.Regex..ctor (System.String pattern, RegexOptions options, TimeSpan matchTimeout, Boolean useCache) [0x00000] in <filename unknown>:0 at System.Text.RegularExpressions.Regex..ctor (System.String pattern) [0x00000] in <filename unknown>:0 at System.Net.WebProxy.CheckBypassList () [0x00000] in <filename unknown>:0 at System.Net.WebProxy..ctor (System.Uri address, Boolean bypassOnLocal, System.String[] bypassList, ICredentials credentials) [0x00000] in <filename unknown>:0 at System.Net.WebProxy..ctor (System.Uri address, Boolean bypassOnLocal, System.String[] bypassList) [0x00000] in <filename unknown>:0 at System.Net.WebRequest.GetSystemWebProxy () [0x00000] in <filename unknown>:0 at NuGet.ProxyCache..cctor () [0x00000] in <filename unknown>:0 --- End of inner exception stack trace --- at NuGet.HttpClient.GetResponse () [0x00000] in <filename unknown>:0 at NuGet.RedirectedHttpClient.GetResponseUri (NuGet.HttpClient client) [0x00000] in <filename unknown>:0 at NuGet.RedirectedHttpClient.EnsureClient () [0x00000] in <filename unknown>:0 at System.Lazy 1[System.Object]。CreateValue () [0x00000] in:0'

它似乎想解析一个'*.intranet'字符串,虽然我不确定它是从哪里得到的。Nuget。配置文件看起来像这样:

<?xml version="1.0" encoding="utf-8"?>
  <configuration>
    <solution>
      <add key="disableSourceControlIntegration" value="true" />
    </solution>
    <config>
      <add key="http_proxy" value="http://localhost:3128" />
    </config>
 </configuration>

我把它添加到我的Mono/etc/mono/[2.0,4.0,4.5]/机器中。配置文件

<configuration>
  <system.net>
    <defaultProxy>
       <proxy proxyadress="http://localhost:3128" />
    </defaultProxy>
  </system.net>
</configuration>

然而,这没有任何效果。我也无法运行mozroots,但我通过下载文件并使用文件选项手动导入它来规避这一点。我想这可能有关系。

NuGet上的mono后代理无法连接到互联网

Mono将查找no_proxyno_proxy环境变量来生成代理的旁路列表。

所以检查这个环境变量是值得的,看看它是否在使用*.intranet并导致异常