Azure是否支持构建F#3.0 / VS2012项目?

时间:2012-09-12 04:05:56

标签: azure f#

我正在尝试将一个MVC4 Web应用程序部署到Azure。它依赖于一个F#项目(包含MVC应用程序的控制器),它一直无法构建错误:

  

C:\ DWASFiles \ Sites \ jbf \ VirtualDirectory0 \ site \ repository \ JBF.Web \ JBF.Web.Controllers \ JBF.Web.FSharp.fsproj:错误MSB4057:项目中不存在目标“Build” 。

VS2012中存在强制升级F#项目的项目。我想知道这是否是Azure不支持的依赖关系,而fsproj的import语句中找到了所有4.5引用:

<Import Project="$(MSBuildExtensionsPath32)\..\Microsoft F#\v4.5\Microsoft.FSharp.Targets" Condition="Exists('$(MSBuildExtensionsPath32)\..\Microsoft F#\v4.5\Microsoft.FSharp.Targets')" />

<Import Project="$(MSBuildExtensionsPath32)\..\Microsoft SDKs\F#\3.0\Framework\v4.0\Microsoft.FSharp.Targets" Condition="Exists('$(MSBuildExtensionsPath32)\..\Microsoft SDKs\F#\3.0\Framework\v4.0\Microsoft.FSharp.Targets')" />

<Import Project="$(MSBuildExtensionsPath32)\..\Microsoft F#\v4.0\Microsoft.FSharp.Targets" Condition="(!Exists('$(MSBuildExtensionsPath32)\..\Microsoft SDKs\F#\3.0\Framework\v4.0\Microsoft.FSharp.Targets')) And (Exists('$(MSBuildExtensionsPath32)\..\Microsoft F#\v4.0\Microsoft.FSharp.Targets'))" />

<Import Project="$(MSBuildExtensionsPath32)\FSharp\1.0\Microsoft.FSharp.Targets" Condition="(!Exists('$(MSBuildExtensionsPath32)\..\Microsoft SDKs\F#\3.0\Framework\v4.0\Microsoft.FSharp.Targets')) And (!Exists('$(MSBuildExtensionsPath32)\..\Microsoft F#\v4.0\Microsoft.FSharp.Targets')) And (Exists('$(MSBuildExtensionsPath32)\FSharp\1.0\Microsoft.FSharp.Targets'))" />

对于记录,如果我预先构建DLL并部署它(引用DLL而不是项目)它可以正常工作。此外,fsproj对F#3.0没有实际依赖性(它是迁移到VS2012的F#2.0项目)。

1 个答案:

答案 0 :(得分:3)

更新:此问题由https://github.com/projectkudu/kudu/issues/137

跟踪

我只是责备了这一点。以下是样本仓库:https://github.com/KuduApps/WebAppWithFSharpLibrary

这绝对是个错误。您能否在https://github.com/projectkudu/kudu上打开一个问题来跟踪此问题?最好跟踪那里的问题,因为StackOverflow问题。谢谢!