【问题标题】:How to build F# projects with Azure Devops Pipelines? I get error 'The target "Build" does not exist in the project'如何使用 Azure Devops Pipelines 构建 F# 项目?我收到错误“项目中不存在目标“构建””
【发布时间】:2019-02-24 09:16:43
【问题描述】:

我是第一次修改 AzureDevops,以设置一些 CI 任务。

我有一个公共存储库(开源),其中包含一个包含 3 个 F# 项目的解决方案 (.sln)。该解决方案在 Windows/Mac/Linux 中构建良好。

但是,如果我尝试使用 Azure Devops Pipelines 设置构建管道,则会收到错误消息:

src\GWallet.Backend\GWallet.Backend.fsproj(0,0):错误 MSB4057: 项目中不存在目标“Build”。

Logs here.

我怀疑被分配执行此操作的构建代理没有安装 F# 工具。因为我猜目标“Build”是在众所周知的Microsoft.FSharp.Targets 文件中定义的。

如何配置 Windows(VS2017) 构建代理以安装 F# 工具,以便可以发现此文件?

【问题讨论】:

标签: f# azure-devops azure-pipelines


【解决方案1】:

@nosami 提出了一个解决方法,我对此不太满意(即:我仍然认为 AzureDevops 团队应该修复他们的默认托管代理以包含 F# 工具),但确实有效:使用由提供的 Microsoft.FSharp.Targets 文件名为FSharp.Compiler.Tools 的nuget 包。 This is the diff 如果你好奇的话,在我的开源项目中。

更新:如果上述方法对您没有帮助或看起来过于复杂,我认为这两个答案之一可能会起作用:adjusting MSBuild properties of your projectusing the proper version of MSBuild 也可以,并且是更简单。

【讨论】:

    猜你喜欢
    • 2019-07-13
    • 1970-01-01
    • 2019-03-16
    • 1970-01-01
    • 2019-12-05
    • 1970-01-01
    • 2019-11-06
    • 2020-05-25
    • 1970-01-01
    相关资源
    最近更新 更多