首页 > 解决方案 > Azure DevOps:管道构建中的 Blazor 部署失败

问题描述

我有一个运行良好的 Blazor WASM 管道发布版本,直到我升级到 .NET5。最近我收到以下错误:...\Microsoft.NET.Sdk.BlazorWebAssembly.ServiceWorkerAssetsManifest.targets(68,5): Error MSB4018: The "GenerateServiceWorkerAssetsManifest" task failed unexpectedly.其次是System.IO.DirectoryNotFoundException: Could not find a part of the path 'D:\a\1\s\ClientSide\BlazorProject\obj\Release\net5.0\service-worker-assets.js'.

我的yaml文件:

trigger:
- main

pool:
  vmImage: 'windows-latest'

variables:
  solution: '**/BlazorProject.csproj'
  solutionSln: '**/*.sln'
  buildPlatform: 'Any CPU'
  buildConfiguration: 'Release'

steps:
- task: NuGetToolInstaller@1

- task: NuGetCommand@2
  inputs:
    command: 'restore'
    restoreSolution: '$(solutionSln)'
    feedsToUse: 'select'
    noCache: true

- task: VSBuild@1
  inputs:
    solution: '$(solution)'
    msbuildArgs: '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:DesktopBuildPackageLocation="$(build.artifactStagingDirectory)/WebClient.zip"'
    platform: '$(buildPlatform)'
    configuration: '$(buildConfiguration)'
    clean: true
    createLogFile: true

- task: AzureRmWebAppDeployment@4
  inputs:
    ConnectionType: 'AzureRM'
    azureSubscription: 'censored'
    appType: 'webApp'
    WebAppName: 'nextGenClientTest'
    packageForLinux: '$(build.artifactStagingDirectory)/WebClient.zip'

所以出于某种原因,我认为它找不到文件service-worker-assets.js,但我不知道为什么。对于那些想知道为什么结构可能很奇怪的人:我有一个用于恢复 nuget-packges 的解决方案文件,在这个管道中我只想构建一个特定的项目BlazorProject.csproj(在我升级到 .NET5 之前它工作正常)。

有谁知道,突然怎么了service-worker-assets.js

标签: azure-devopsblazor-webassembly

解决方案


Azure DevOps:管道构建中的 Blazor 部署失败

关于它有一个问题:

Blazor Service Worker 资产清单路径构建错误

并且此问题已移至下一个 sprint 计划里程碑,以供将来评估/考虑。aspnetcore 团队将在他们为下一个里程碑计划工作时评估该请求。

此外,为确保您已正确升级项目,请参阅以下文档了解更多详细信息:

更新 Blazor WebAssembly 项目


推荐阅读