Ægi*_*son 2 c# automapper azure-devops azure-pipelines .net-6.0
当我的管道运行时,我收到以下错误消息:
包 AutoMapper.Extensions.Microsoft.DependencyInjection 8.1.1 与 net60 (.NETFramework,版本 = v6.0) 不兼容。软件包 AutoMapper.Extensions.Microsoft.DependencyInjection 8.1.1 支持: netstandard2.0 (.NETStandard,Version=v2.0) 一个或多个软件包与 .NETFramework,Version=v6.0 不兼容。)
我可以在这里做些什么,还是需要等待 AutoMapper 团队更新?
经过一番研究,我决定用 DotNetCoreCli“恢复”任务替换 NuGetCommand(NuGet-Task)。首先,我必须将“vmImage”从“windows-latest”切换为“windows-2022”,因为最新的似乎有几个月的宽限期(在此处阅读更多信息)。就在那之前,我遇到了更多“与 net60 不兼容”错误。不仅仅是来自 AutoMapper。
这是我的 Azure DevOps Pipeline YAML,供所有在将管道迁移到 .NET 6 作为起点时遇到同样困难的人使用。
trigger:
batch: true
branches:
include:
- main
stages:
- stage: Build_Release
pool:
vmImage: windows-2022
jobs:
- job: Build
variables:
buildConfiguration: 'Release'
solution: './SomeSolution.Name.sln'
continueOnError: false
steps:
- task: DotNetCoreCLI@2
inputs:
command: 'restore'
feedsToUse: 'config'
nugetConfigPath: '.\NuGet.config'
externalFeedCredentials: 'Telerik NuGet Connection'
- task: VSBuild@1
displayName: 'Build Solution'
inputs:
solution: '$(solution)'
msbuildArgs: '/p:DeployOnBuild=true /p:PublishProvider=FileSystem /p:ExcludeApp_Data=False /p:DeleteExistingFiles=True /p:PublishUrl=$(Build.ArtifactStagingDirectory) /p:Configuration=$(buildConfiguration)'
configuration: '$(buildConfiguration)'
maximumCpuCount: true
createLogFile: true
- task: PublishBuildArtifacts@1
displayName: 'Publish Artifacts'
inputs:
PathtoPublish: '$(Build.ArtifactStagingDirectory)'
ArtifactName: 'some-artifact-name'
publishLocation: 'Container'
Run Code Online (Sandbox Code Playgroud)
编辑:删除了 UseDotNet-Task,因为使用 windows-2022 时似乎不需要它。关联
| 归档时间: |
|
| 查看次数: |
5866 次 |
| 最近记录: |