使用F#runtime 2.0在Windows服务器上使用构建服务构建包含F#项目的解决方案

时间:2011-09-07 08:45:06

标签: f# tfsbuild build-definition

我正在尝试使用TFS 2010构建服务(在Windows Server SP2上)。我想要构建的解决方案包括许多C#项目和一个F#项目。在我自己的PC上,我使用F#安装了Microsoft Visual Studio 2010(版本10.0.40219.1 SP1Rel,Microsoft .NET Framework,版本4.0.30319 SP1Rel),我可以构建解决方案。 当我创建我的TFS构建定义时(通过团队资源管理器 - >右键单击'所有构建定义' - >'新构建定义')我只选择了默认的东西并在服务器共享上指定了一个drop文件夹。

在服务器上,我从http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=13450

安装了VS 2010 F#Runtime 2.0

排队时,它会运行一段时间,然后输出以下错误:  C:\ Builds \ 1 \ Processing \ SM0021 \ Sources \ Processing \ Libraries \ Syntune.Math \ Release \ Syntune.Math.FSharp \ Syntune.Math.FSharp.fsproj(39):导入的项目“C:\ Program Files \找不到Microsoft F#\ v4.0 \ Microsoft.FSharp.Targets“。确认声明中的路径是否正确,以及该文件是否存在于磁盘上。

我不知道构建定义是否需要指定构建服务应该如何找到F#运行时,如果我需要安装其他一些F#包/发行版或者我必须做其他事情。或者,如果这不能通过TFS构建服务来完成。

这与F#运行时有关还是我的构建定义有问题? 我可以将文件从PC复制到服务器并在GAC中注册吗?

1 个答案:

答案 0 :(得分:2)

“F#运行时”不包含编译器(它也不包括MS BUILD的targets文件。

如果你能做到这一点,那么最简单的选择就是在构建机器上安装带有F#的Visual Studio。如果这不是一个选项,您可以尝试安装包含编译器的standalone version of F#。但是,我不确定TFS构建服务是否会自动找到此安装。