Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 为什么我的F#项目在本地构建,但在Travis上失败了?_.net_F#_Travis Ci - Fatal编程技术网

.net 为什么我的F#项目在本地构建,但在Travis上失败了?

.net 为什么我的F#项目在本地构建,但在Travis上失败了?,.net,f#,travis-ci,.net,F#,Travis Ci,我的项目的生成包含以下错误: FSC:错误FS0193:编译单元“System”中的模块/命名空间“System.Net”不包含命名空间、模块或类型“WebClient” 主项目没有任何依赖项,测试项目也不依赖于System.Net或WebClient,因此我不确定这在这里是如何应用的 在本地一切正常,所以我假设某个地方的版本不匹配,但无法确定是什么 我的本地构建的输出可以在中找到 更新 根据它所创建的,发现这是一个单声道 建议的方法是从NuGet包中引用FSharp.Core,这对我很有用

我的项目的生成包含以下错误:

FSC:错误FS0193:编译单元“System”中的模块/命名空间“System.Net”不包含命名空间、模块或类型“WebClient”

主项目没有任何依赖项,测试项目也不依赖于
System.Net
WebClient
,因此我不确定这在这里是如何应用的

在本地一切正常,所以我假设某个地方的版本不匹配,但无法确定是什么

我的本地构建的输出可以在中找到


更新

根据它所创建的,发现这是一个单声道

建议的方法是从NuGet包中引用
FSharp.Core
,这对我很有用


您可能希望,正如我所做的那样。

travis版本正在使用来自GAC的
FSharp.Core
构建:

-r:/usr/lib/mono/gac/FSharp.Core/4.3.1.0__b03f5f7f11d50a3a/FSharp.Core.dll

而您的本地构建使用的是
FSharp.Core

-r:“/Library/Frameworks/Mono.framework/Versions/4.0.2/lib/Mono/xbuild/。/Reference Assemblies/Microsoft/FSharp/.NETCore/3.259.3.1/FSharp.Core.dll”

您得到的错误是:

FSC:错误FS0193:编译单元“System”中的模块/命名空间“System.Net”不包含命名空间、模块或类型“WebClient”

表示一个不匹配的
FSharp.Core
,它试图从位于GAC中的FSharp.Core解析System.Net引用,项目中的其他引用都是PCL 259,它们将不满足此引用

至于为什么,你能让特拉维斯用诊断开关来建造吗

好的,接下来,现在有一个诊断构建链接,问题在这里:

HintPath/usr/lib/mono/xbuild/。/Reference Assemblies/Microsoft/FSharp/.NETCore/3.259.3.1/FSharp.Core.dll不存在。 参考FSharp.Core解析为/usr/lib/mono/gac/FSharp.Core/4.4.0.0__b03f5f7f11d50a3a/FSharp.Core.dll。CopyLocal=False 在搜索路径{GAC}处找到引用

travis实例没有:

/usr/lib/mono/xbuild/。/Reference Assemblies/Microsoft/FSharp/.NETCore/3.259.3.1/FSharp.Core.dll

所以它又回到了gac

最近出现了一个问题,FSharp.Core没有安装到正确的位置,可能这就是问题的表现


我要做的是尝试这里描述的不同版本的mono:可能尝试一个旧版本,如3.12或alpha或beta,以尝试确认这确实是问题所在。

全盲拍摄,但似乎您正在使用FSharp.Core 4.3.1.0组件进行本地构建,而TravisCI使用3.x。它们可能具有不同的传递依赖项。我在谷歌上搜索了一下,似乎你已经遇到了一些PCL的F#问题——这可能是另一个问题;在4.x中固定,在3.x中出现。你能试着在3.x上的某个地方构建它吗?我试着找出它,但是到处都有4.x。谢谢你的关注。我更新了问题链接到Travis构建,其中/verbosity:diagnostic添加了一个构建矩阵。有些版本有不同的消息,但看起来本质上是相同的问题:这可能是Travis上的软件包安装问题,我为您记录了一个问题: