J'ai passé 2 heures à essayer de comprendre ce qui ne va pas avec mon pipeline pour les fonctions Azure .NET6 (sur Windows).
Error NETSDK1045: The current .NET SDK does not support targeting .NET 6.0. Either target .NET 5.0 or lower, or use a version of the .NET SDK that supports .NET 6.0.
7 Réponses :
J'ai trouvé la solution ici https: //jaliyaudagedara.blogspot .com / 2021/07 / azure-devops-building-projects.html
Cela fonctionne si je spécifie la version .NET Core SDK et définit la version Aperçu sur True
# .NET Core Function App to Windows on Azure # Build a .NET Core function app and deploy it to Azure as a Windows function App. # Add steps that analyze code, save build artifacts, deploy, and more: # https://docs.microsoft.com/en-us/azure/devops/pipelines/languages/dotnet-core trigger: - master - main - dev variables: azureSubscription: 'XXXX' functionAppName: 'XXXX' vmImageName: 'windows-latest' workingDirectory: '$(System.DefaultWorkingDirectory)/XXXX' stages: - stage: Build displayName: Build stage jobs: - job: Build displayName: Build pool: vmImage: $(vmImageName) steps: - task: UseDotNet@2 displayName: 'Use .NET 6 Core sdk' inputs: packageType: 'sdk' version: '6.0.x' includePreviewVersions: true - task: DotNetCoreCLI@2 displayName: Build inputs: command: 'build' projects: | $(workingDirectory)/*.csproj arguments: --output $(System.DefaultWorkingDirectory)/publish_output --configuration Release - task: ArchiveFiles@2 displayName: 'Archive files' inputs: rootFolderOrFile: '$(System.DefaultWorkingDirectory)/publish_output' includeRootFolder: false archiveType: zip archiveFile: $(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip replaceExistingArchive: true - publish: $(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip artifact: drop - stage: Deploy displayName: Deploy stage dependsOn: Build condition: succeeded() jobs: - deployment: Deploy displayName: Deploy environment: 'development' pool: vmImage: $(vmImageName) strategy: runOnce: deploy: steps: - task: AzureFunctionApp@1 displayName: 'Azure functions app deploy' inputs: azureSubscription: '$(azureSubscription)' appType: functionApp appName: $(functionAppName) package: '$(Pipeline.Workspace)/drop/$(Build.BuildId).zip'
donc mes pipelines finaux ressemblent à ceci
- task: UseDotNet@2 displayName: 'Use .NET Core sdk' inputs: packageType: 'sdk' version: '6.0.x' includePreviewVersions: true
p>
Les numéros de version peuvent être trouvés dans ce document: github. com / dotnet / core / blob / main / release-notes /… (par exemple 6.0.100)
Il semble qu'il y ait généralement un retard entre une nouvelle version de .NET qui est publiée, et ces agents prenant en charge cette version par défaut. Au moment de la rédaction du présent document, il y a un problème ouvert soulevé pour cela: github.com/dotnet/core/ Problèmes / 6907
Une idée comment cela fonctionne en utilisant l'éditeur classique?
Je suppose qu'il est utilisé .NET Core SDK
J'ai pu tirer parti de cette solution avec succès, mais je l'ai fait sans includepreViewVersions: true
.
Pour l'éditeur classique - Définissez l'agent sur Windows 2022 et assurez-vous d'utiliser la dernière version NuGet (j'ai utilisé 5.8 et cela a bien fonctionné).
Je l'avais réglé sur Windows, ce qui ne fonctionne pas. Windows 2022 le fait.
J'ai eu cette erreur lors de l'exécution d'un projet et de l'installation du SDK .NET 6.0 a résolu mon problème. https: // dotnet .microsoft.com / en-us / download / dotnet / merci-you / sdk-6.0.102-windows-x64-installer
J'ai obtenu cette erreur lorsque j'utilisais un pipeline sur .NET6 Core Project réalisé sur VS2022. Après avoir modifié le pool vMimage
en windows-2022
à partir de windows-latest
, les choses ont fonctionné pour moi.
Référence MS de la documentation p. >
a également ajouté la dernière version de Nugetinstalle versions nuget
trigger: - master pool: vmImage: 'windows-2022' variables: solution: '**/*.sln' buildPlatform: 'Any CPU' buildConfiguration: 'Release' steps: - task: NuGetToolInstaller@1 inputs: versionSpec: '6.1' checkLatest: true - task: NuGetCommand@2 inputs: restoreSolution: '$(solution)' - 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)'
résolu : avec .net6 projet de base réalisé sur VS2022. Vous avez besoin d'utiliser une version du SDK .NET qui prend en charge .NET 6.0.
Avant .net La tâche de publication centrale doit ajouter une autre tâche ( en dessous d'un pour une version spécifique de SDK 6.0 )
variables: - name: BuildParameters.packageType value: sdk resources: repositories: - repository: self type: git ref: refs/heads/Develop jobs: - job: Job_1 displayName: Agent job 1 pool: vmImage: windows-2019 steps: - checkout: self - task: NuGetToolInstaller@1 displayName: 'Use NuGet ' - task: NuGetCommand@2 displayName: NuGet restore inputs: solution: Marielinas - task: UseDotNet@2 displayName: Use .NET Core sdk 6.0.x inputs: packageType: $(BuildParameters.packageType) version: 6.0.x includePreviewVersions: true - task: DotNetCoreCLI@2 displayName: dotnet publish inputs: command: publish arguments: -c release --output $(Build.ArtifactStagingDirectory) workingDirectory: Marielinas.ASP.NET6.0 - task: AzureWebApp@1 displayName: 'Azure Web App Deploy: marielinasshop' inputs: azureSubscription: 37f84ce6-e4f1-4a03-b107-9c9a527dff4a appType: webApp appName: marielinasshop deployToSlotOrASE: true resourceGroupName: GreenLab package: $(Build.ArtifactStagingDirectory)/**/*.zip ...
mon yaml complet ressemble (à construire avec succès 26 May, 2022)
steps: - task: UseDotNet@2 displayName: 'Use .NET Core sdk 6.0.x' inputs: packageType: '$(Parameters.packageType)' version: 6.0.x includePreviewVersions: true
Un de mes collègues construise une console-appa vers .NET 6.0 dans vs 2022.
J'ai ouvert la solution dans VS 2019 et j'ai obtenu cette erreur exacte.
Cela a fonctionné comme un charme lorsque j'ai également utilisé VS 2022 ..
Mettre à jour Visual Studio vers VS2019 16.11.7 Mon problème résolu.
Votre réponse pourrait être améliorée avec des informations de support supplémentaires. Veuillez modifier pour ajouter plus de détails, tels que des citations ou de la documentation, afin que d'autres puissent confirmer que votre réponse est correcte. Vous pouvez trouver plus d'informations sur la façon d'écrire de bonnes réponses dans le centre d'aide .
En raison des modifications de rupture de Microsoft, une mise à niveau de Visual Studio peut résoudre ce problème; Est ce à quoi il faisait référence, je crois: docs.microsoft.com/en-us/dotnet/core/compatibility/sdk/6.0/…
La question déclare clairement qu'il s'agit d'azur