我正在为我的.netCore服务使用AzureDevOps,但是在进行构建时,版本存在问题。
此服务使用nugetFeed,而我的YML文件是这样的:
trigger:
- master
pool:
vmImage: 'windows-latest'
variables:
solution: '**/*.sln'
buildPlatform: 'Any CPU'
buildConfiguration: 'Release'
steps:
-task: NuGetCommand@2
inputs:
command: 'restore'
restoreSolution: '**/*.sln'
feedsToUse: 'select'
vstsFeed: 'FeedsName'
includeNuGetOrg: false
versioningScheme: 'off'
-task: VSBuild@1
inputs:
solution: '$(solution)'
msbuildArgs: '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:DesktopBuildPackageLocation="$(build.artifactStagingDirectory)\WebApp.zip" /p:DeployIisAppPath="Default Web Site"'
platform: '$(buildPlatform)'
configuration: '$(buildConfiguration)'
我不理解为什么我下载代码并使用VS进行编译时我没有任何问题,但是将此文件用于构建时我有以下答案:
Unable to resolve 'System.Xml.XmlDocument (>= 4.3.0)' for '.NETCoreApp,Version=v2.1'.
Unable to resolve 'System.Runtime.Serialization.Formatters (>= 4.3.0)' for '.NETCoreApp,Version=v2.1'.
感谢您的帮助!
答案 0 :(得分:0)
您在nuget命令之前缺少任务“ nuget工具安装程序”,否则nuget会使用nuget的过时版本(默认值为4.1,netstandard和netcore需要4.3或更高版本)。 Visual-studio已经包含nuget的最新版本。
在nuget命令之前将以下内容添加到您的Yaml中:
- task: NuGetToolInstaller@0
displayName: 'Install Nuget'
inputs:
versionSpec: '4.x'
checkLatest: true