Microsoft.Build Project类无法加载f#项目文件

时间:2015-04-08 09:46:51

标签: .net f# msbuild

我有这个简单的c#程序(用于演示问题):

Project p = new Project("MyProject.fsproj");
Console.WriteLine("Project loaded {0}", p.FullPath);

在我的主计算机上,这非常有效。但是,当试图在另一台机器上打开相同的.fsproj文件时,它失败了:

  

未处理的例外情况:   Microsoft.Build.Exceptions.InvalidProjectFileException:值""   "项目"元素中的属性无效。参数   "路径"不能有零长度。 C:\ TEMP \ MyProject.fsproj

两台机器都有:

  • VS2013 premium Update 4
  • MSBuild版本12.0.31101.0
  • .Net 4.5.2
  • Microsoft Visual F#3.1.2

我认为异常是指项目文件的这一部分,而且$(FSharpTargetsPath)可能没有填写?

<Choose>
<When Condition="'$(VisualStudioVersion)' == '11.0'">
  <PropertyGroup Condition="Exists('$(MSBuildExtensionsPath32)\..\Microsoft SDKs\F#\3.0\Framework\v4.0\Microsoft.FSharp.Targets')">
    <FSharpTargetsPath>$(MSBuildExtensionsPath32)\..\Microsoft SDKs\F#\3.0\Framework\v4.0\Microsoft.FSharp.Targets</FSharpTargetsPath>
  </PropertyGroup>
</When>
<Otherwise>
  <PropertyGroup Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\FSharp\Microsoft.FSharp.Targets')">
    <FSharpTargetsPath>$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\FSharp\Microsoft.FSharp.Targets</FSharpTargetsPath>
  </PropertyGroup>
</Otherwise>
</Choose>
<Import Project="$(FSharpTargetsPath)" />

0 个答案:

没有答案