Azure管道未使用指定的NuGet版本

问题描述 投票:0回答:2

这是我原来的YML文件。

trigger:
- master

pool:
  vmImage: 'Ubuntu-16.04'

variables:
  buildConfiguration: 'Release'

steps:

- task: NuGetToolInstaller@0
  displayName: "NuGet use 4.9.3"
  inputs:
    versionSpec: 4.9.3

- task: DotNetCoreInstaller@0
  inputs:
    version: '2.2.104'

- task: NuGetCommand@2
  displayName: "NuGet Restore"
  inputs:
    restoreSolution: '**/*.csproj'

- task: DotNetCoreCLI@2
  displayName: ".NET build"
  inputs:
    projects: '**/*.csproj'
    arguments: --configuration $(BuildConfiguration) --no-restore

- task: DotNetCoreCLI@2
  displayName: ".NET publish package"
  inputs:
    command: publish
    arguments: '--configuration $(BuildConfiguration) --no-restore --output $(Build.ArtifactStagingDirectory)/app/pkg'

这是我为Nuget Restore步骤获得的输出。

[部分]开始:NuGet恢复=========================================== ===================================任务:NuGet描述:恢复,打包或推送NuGet包,或者运行NuGet命令。支持NuGet.org和经过身份验证的Feed,例如Package Management和MyGet。使用NuGet.exe并与.NET Framework应用程序一起使用。对于.NET Core和.NET Standard应用程序,请使用.NET Core任务。版本:2.147.6作者:微软公司帮助:More Information ====================================== ========================================缓存工具:NuGet 4.1.0 x64找到的工具在缓存中:NuGet 4.1.0 x64从工具缓存中解决:4.1.0使用版本:4.1.0在缓存中找到工具:NuGet 4.1.0 x64

如何禁用“工具缓存”?它使用的是4.1.0而不是4.9.3。

更新:根据评论的建议,我更新了我的YML文件。

trigger:
- master

pool:
  vmImage: 'vs2017-win2016'

variables:
  buildConfiguration: 'Release'

steps:

- task: DotNetCoreCLI@2
  inputs:
    command: restore

- task: DotNetCoreCLI@2
  displayName: ".NET build"
  inputs:
    projects: '**/*.csproj'
    arguments: --configuration $(BuildConfiguration) --no-restore

- task: DotNetCoreCLI@2
  displayName: ".NET publish package"
  inputs:
    command: publish
    arguments: '--configuration $(BuildConfiguration) --no-restore --output $(Build.ArtifactStagingDirectory)/app/pkg'

我仍然得到错误。

它仍在做同样的事情。

启动NuGet还原

任务:NuGet描述:恢复,打包或推送NuGet包,或运行NuGet命令。支持NuGet.org和经过身份验证的Feed,例如Package Management和MyGet。使用NuGet.exe并与.NET Framework应用程序一起使用。对于.NET Core和.NET Standard应用程序,请使用.NET Core任务。版本:2.147.6作者:Microsoft Corporation帮助:更多信息,请访问://go.microsoft.com/fwlink/?LinkID = 613747

缓存工具:NuGet 4.1.0 x64在缓存中找到工具:NuGet 4.1.0 x64从工具缓存中解析:4.1.0使用版本:4.1.0在缓存中找到工具:NuGet 4.1.0 x64 SYSTEMVSSCONNECTION存在true SYSTEMVSSCONNECTION存在true [命令] C:\ windows \ system32 \ chcp.com 65001活动代码页:65001检测到NuGet版本4.1.0.2450 / 4.1.0 SYSTEMVSSCONNECTION存在true将NuGet.config保存到临时配置文件。 [command] C:\ hostedtoolcache \ windows \ NuGet \ 4.1.0 \ x64 \ nuget.exe sources Add -NonInteractive -Name NuGetOrg -Source https://www.nuget.org/api/v2/ -ConfigFile d:\ a \ 1 \ Nuget \ tempNuGet_57.config Package Source with Name: NuGetOrg成功添加。将NuGet.config保存到临时配置文件。

为什么它甚至不再在我的YML文件中进行Nuget Restore?

azure azure-devops nuget yaml azure-web-sites
2个回答
1
投票

工具安装程序和NuGet任务更适合Windows机器。由于您使用的是Ubuntu代理,只需使用dotnet restore命令:

- task: DotNetCoreCLI@2
  inputs:
    command: restore

0
投票

这对我有用

- task: NuGetToolInstaller@0
  displayName: 'Use NuGet 4.9.x'
  inputs:
    versionSpec: 4.9.x

- task: NuGetCommand@2
  displayName: 'NuGet restore'
  inputs:
    restoreSolution: '$(Pipeline.TriggerDirectory)/Library.sln'
    vstsFeed: '[your feed here]'
    noCache: true

日志

Tool install

[section]开始:使用NuGet 4.9.x. ================================================== =======================任务:NuGet工具安装程序 描述:从互联网或工具缓存中获取特定版本的NuGet,并将其添加到PATH。使用此任务可以更改NuGet任务中使用的NuGet版本。 版本:0.145.0 作者:微软公司 帮助:More Information ================================================== =======================您正在使用版本字符串上的查询匹配项。当NuGet更新到新版本时,可能会发生行为更改或中断更改。正在下载:https://dist.nuget.org/win-x86-commandline/v4.9.3/nuget.exe 缓存工具:NuGet 4.9.3 x64 使用版本:4.9.3 在缓存中找到工具:NuGet 4.9.3 x64 使用工具路径:C:\ hostedtoolcache \ windows \ NuGet \ 4.9.3 \ x64使用目录预先填充PATH环境变量:C:\ hostedtoolcache \ windows \ NuGet \ 4.9.3 \ x64 [部分]整理:使用NuGet 4.9.x.

Package restore

[部分]开始:NuGet恢复=========================================== ==============================任务:NuGet 描述:恢复,打包或推送NuGet包,或运行NuGet命令。支持NuGet.org和经过身份验证的Feed,例如Package Management和MyGet。使用NuGet.exe并与.NET Framework应用程序一起使用。对于.NET Core和.NET Standard应用程序,请使用.NET Core任务。 版本:2.147.6 作者:微软公司 帮助:More Information ================================================== ======================= SYSTEMVSSCONNECTION存在 SYSTEMVSSCONNECTION存在为true [命令] C:\ windows \ system32 \ chcp.com 65001 活动代码页:65001 检测到NuGet版本4.9.3.5777 / 4.9.3 + e5150f1e119e456e01c4f1e413213d392eda1c3a SYSTEMVSSCONNECTION存在为true 将NuGet.config保存到临时配置文件。 [命令] C:\ hostedtoolcache \ Windows \的NuGet \ 4.9.3 \ 64 \ nuget.exe

© www.soinside.com 2019 - 2024. All rights reserved.