【问题标题】:Use a specific version of .NET Core with the Azure DevOps 'DotNetCoreCLI' task [duplicate]将特定版本的 .NET Core 与 Azure DevOps 'DotNetCoreCLI' 任务一起使用 [重复]
【发布时间】:2020-02-10 12:36:54
【问题描述】:

我正在创建 Azure DevOps 管道,并且需要使用 .NET Core 3.1。

documentation 中,我看不到任何对将与DotNetCoreCLI 任务一起使用的.NET Core 版本的明显引用,所以我试了一下-

- task: DotNetCoreCLI@2
  name: Dotnet_Restore
  inputs:
    command: 'restore'
    feedsToUse: 'select'

这失败了,错误为The current .NET SDK does not support targeting .NET Core 3.1.,但有趣的是日志状态-

信息:Azure Pipelines 托管代理已更新为包含 .Net Core 3.x SDK/Runtime 以及 2.2 和 2.1。

考虑到这一点,我再次查看文档并遇到requestedMajor|Minor|PatchVersion 参数,因此我更新了我的任务-

- task: DotNetCoreCLI@2
  name: Dotnet_Restore
  inputs:
    command: 'restore'
    feedsToUse: 'select'
    requestedMajorVersion: '3'
    requestedMinorVersion: '1'

遗憾的是,这也失败了,使用与上面相同的“信息”语句。

【问题讨论】:

标签: .net-core azure-devops


【解决方案1】:

UseDotNet task 似乎是我在这里需要的,并附有说明 -

在构建或发布管道中使用此任务从 Internet 或工具缓存获取特定版本的 .NET Core 并将其添加到 PATH。

您还可以使用此任务更改后续任务(如 .NET Core cli 任务)中使用的 .NET Core 版本。

为了测试,我在管道的开头添加了一个新任务,请求 .NET Core 版本 3.1.101 -

- task: UseDotNet@2
  displayName: 'Use .NET Core sdk'
  inputs:
    packageType: sdk
    version: 3.1.x
    installationPath: $(Agent.ToolsDirectory)/dotnet

重要提示

如果您在多个作业中使用 DotNetCoreCLI 任务,则必须在每个作业的开头包含 UseDotNet 任务。这非常不方便,希望将来可以改进。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-04-23
    • 1970-01-01
    • 2020-06-11
    • 2016-11-13
    • 2019-11-01
    • 1970-01-01
    • 2015-08-11
    • 1970-01-01
    相关资源
    最近更新 更多