6

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

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

VS2012 中存在项目,这会强制升级 F# 项目。我想知道这是否是 Azure 尚不支持的依赖项,在 fsproj 的导入语句中找到的所有 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 项目)。

4

1 回答 1

3

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

我只是复制了这个。这是示例存储库:https ://github.com/KuduApps/WebAppWithFSharpLibrary 。

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

于 2012-09-13T01:45:57.053 回答