我有一个主要是 C# 的 VS 2010 混合语言解决方案,但包含一个用 F# 编写的 Windows 服务。我在并行环境中使用 xbuild 构建了这个建筑,但是自从从badgerports升级到 mono 2.10.5 的打包版本后,我一直无法让它工作。
我通常遇到的错误是:
/home/alex/git/Solution/FSProject/FSProject.fsproj:错误:在项目中找不到名为“Build”的目标。
令我困惑的是,查看项目文件,似乎没有定义任何目标。我远非 MSBuild 专家,但这对我来说似乎有点奇怪。话虽如此,它以前确实有效。
有没有人遇到过(并希望找到解决方案)类似的问题?如果可能的话,我希望能够使用 xbuild 和 Visual Studio 构建解决方案。
环境是从 badgerports 运行单声道 2.10.5 的 mint 11(不确定这是基于 ubuntu 特立独行还是 natty)。fsharp 是从最新源安装到默认前缀的。
编辑
多亏了布赖恩的指针,我已经能够更接近一点(我确实必须对路径进行硬编码,xbuild 似乎无法解决诸如 "$(MSBuildExtensionsPath32)..\FSharp\1.0\Microsoft.FSharp.Targets 之类的问题”)。FSC 现在实际上正在被调用,尽管它抱怨它无法解析对 FSharp.Core 的引用。
我发现此页面F# 和 XBuild (Debian)有助于实现这一目标。