Ric*_*ban 5 msbuild teamcity continuous-integration f#
我正在尝试让我们的构建服务器(TeamCity 8)构建一个F#项目(我们团队中创建的第一个项目).
当我第一次运行构建时,我收到以下错误:
The value "" of the "Project" attribute in element <Import> is invalid. Parameter "path" cannot have zero length.
Run Code Online (Sandbox Code Playgroud)
我认为这意味着构建服务器上不存在必需的F#工具.我尝试使用此博客文章中的说明纠正此问题:http://www.heartysoft.com/ashic/blog/2013/3/build-fsharp-3-on-build-server-without-vs(摘要:下载和安装VWD_FSharp.msi)但问题仍然存在.然后我将Condition ="Exists('$(FSharpTargetsPath)')"添加到fsproj中的Import标记,以便它现在读取:
<Import Project="$(FSharpTargetsPath)" Condition="Exists('$(FSharpTargetsPath)')" />
Run Code Online (Sandbox Code Playgroud)
我在另一篇博客文章中看到过,但所做的就是将早期的错误换成新的错误:
The target "Rebuild" does not exist in the project.
Run Code Online (Sandbox Code Playgroud)
这里的任何帮助将不胜感激; 我真的不想在构建服务器上安装VS. 关于我们环境的唯一可能值得注意的事情是我们使用的是.NET 4而不是4.5.
谢谢
感谢您的问题 Ganesh,我已经解决了这个问题。
因此,使用我问题中的链接安装 F# 工具确实有效,但在 MSBuild 目录中进行一番挖掘后,发现它只安装了 F# v3;我的项目目标是 v3.1(VS2013 中的默认版本)。
进入每个项目的设置文件并重新定位 3.0 解决了这个问题。