如何解决如何在Azure DevOps中指定与自托管代理一起使用的nuget.exe版本?
我正在运行自托管代理,NuGetToolInstaller
总是抛出错误ERR:unable to get local issuer certificate
。
我发现了一个修复程序here。只是要将所需的nuget.exe
版本下载到计算机上,将其添加到环境变量中并完全删除NuGetToolInstaller
。它解决了这个问题,但是今天我知道事实并非如此。
当前,我有nuget.exe version 5.6.0
,所以我认为自托管代理会使用它,但是...
运行Initialize Job
Azure时会下载NuGetCommand
我找到了该位置,可以看到它下载了nuget.exe
的三个不同版本
对于任何NuGetCommand,它始终使用4.1.0
。
如何指定不使用NuGetToolInstaller
的NuGet版本?
或者如何使Initialize Job
不下载任何nuget.exe
并仅使用系统中可用的那个文件?
为了进行测试,我从yaml
中删除了所有内容,看起来像这样:
trigger:
- master
pool:
name: somePool
jobs:
- job: someJob
variables:
solution: '**/*.sln'
buildPlatform: 'Any CPU'
buildConfiguration: 'Release'
steps:
- task: NuGetCommand@2
inputs:
restoreSolution: '$(solution)'
解决方法
从管道日志中,似乎nuget任务默认使用v4.1:
如果您不想使用NuGetToolInstaller
任务,一种解决方法是将nuget.exe替换为您要在{agent work folder}\_tool\NuGet\4.1.0\x64
文件夹中使用的版本。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。