You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VS2022创建.NET8 Web项目构建失败:DefineStaticWebAssetEndpoints任务异常

.NET 8 Web项目创建后直接构建失败:StaticWebAssets任务缺失LastWriteTime元数据

错误日志

System.AggregateException: One or more errors occurred. ---> System.InvalidOperationException: Last write time for 'C:\Users\jugki\source\repos\BlazorApp1\BlazorApp1\wwwroot\app.css' is not defined.
   at Microsoft.AspNetCore.StaticWebAssets.Tasks.StaticWebAsset.Validate()
   at Microsoft.AspNetCore.StaticWebAssets.Tasks.StaticWebAsset.FromTaskItem(ITaskItem item)
   at Microsoft.AspNetCore.StaticWebAssets.Tasks.DefineStaticWebAssetEndpoints.ParallelWorker.Process(Int32 i, ParallelLoopState _)
   at Microsoft.AspNetCore.StaticWebAssets.Tasks.DefineStaticWebAssetEndpoints.<>c.<Execute>b__16_2(Int32 i, ParallelLoopState loop, ParallelWorker state)
   at System.Threading.Tasks.Parallel.<>c__DisplayClass17_0`1.<ForWorker>b__1()
   at System.Threading.Tasks.Task.InnerInvokeWithArg(Task childTask)
   at System.Threading.Tasks.Task.<>c__DisplayClass176_0.<ExecuteSelfReplicating>b__0(Object <p0>)
   --- End of inner exception stack trace ---
   at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
   at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Parallel.ForWorker[TLocal](Int32 fromInclusive, Int32 toExclusive, ParallelOptions parallelOptions, Action`1 body, Action`2 bodyWithState, Func`4 bodyWithLocal, Func`1 localInit, Action`1 localFinally)
   at System.Threading.Tasks.Parallel.For[TLocal](Int32 fromInclusive, Int32 toExclusive, Func`1 localInit, Func`4 body, Action`1 localFinally)
   at Microsoft.AspNetCore.StaticWebAssets.Tasks.DefineStaticWebAssetEndpoints.Execute()
   at Microsoft.Build.BackEnd.TaskExecutionHost.Execute()
   at Microsoft.Build.BackEnd.TaskBuilder.<ExecuteInstantiatedTask>d__26.MoveNext()
---> (Inner Exception #0) System.InvalidOperationException: Last write time for 'C:\Users\jugki\source\repos\BlazorApp1\BlazorApp1\wwwroot\app.css' is not defined.
   at Microsoft.AspNetCore.StaticWebAssets.Tasks.StaticWebAsset.Validate()
   at Microsoft.AspNetCore.StaticWebAssets.Tasks.StaticWebAsset.FromTaskItem(ITaskItem item)
   at Microsoft.AspNetCore.StaticWebAssets.Tasks.DefineStaticWebAssetEndpoints.ParallelWorker.Process(Int32 i, ParallelLoopState _)
   at Microsoft.AspNetCore.StaticWebAssets.Tasks.DefineStaticWebAssetEndpoints.<>c.<Execute>b__16_2(Int32 i, ParallelLoopState loop, ParallelWorker state)
   at System.Threading.Tasks.Parallel.<>c__DisplayClass17_0`1.<ForWorker>b__1()
   at System.Threading.Tasks.Task.InnerInvokeWithArg(Task childTask)
   at System.Threading.Tasks.Task.<>c__DisplayClass176_0.<ExecuteSelfReplicating>b__0(Object <p0>)<---

---> (Inner Exception #1) System.InvalidOperationException: Last write time for 'C:\Users\jugki\source\repos\BlazorApp1\BlazorApp1\wwwroot\lib\bootstrap\dist\css\bootstrap-grid.css.map' is not defined.
   at Microsoft.AspNetCore.StaticWebAssets.Tasks.StaticWebAsset.Validate()
   at Microsoft.AspNetCore.StaticWebAssets.Tasks.StaticWebAsset.FromTaskItem(ITaskItem item)
   at Microsoft.AspNetCore.StaticWebAssets.Tasks.DefineStaticWebAssetEndpoints.ParallelWorker.Process(Int32 i, ParallelLoopState _)
   at Microsoft.AspNetCore.StaticWebAssets.Tasks.DefineStaticWebAssetEndpoints.<>c.<Execute>b__16_2(Int32 i, ParallelLoopState loop, ParallelWorker state)
   at System.Threading.Tasks.Parallel.<>c__DisplayClass17_0`1.<ForWorker>b__1()
   at System.Threading.Tasks.Task.InnerInvokeWithArg(Task childTask)
   at System.Threading.Tasks.Task.<>c__DisplayClass176_0.<ExecuteSelfReplicating>b__0(Object <p0>)<---

---> (Inner Exception #2) System.InvalidOperationException: Last write time for 'C:\Users\jugki\source\repos\BlazorApp1\BlazorApp1\wwwroot\lib\bootstrap\dist\css\bootstrap-grid.rtl.css' is not defined.
   at Microsoft.AspNetCore.StaticWebAssets.Tasks.StaticWebAsset.Validate()
   at Microsoft.AspNetCore.StaticWebAssets.Tasks.StaticWebAsset.FromTaskItem(ITaskItem item)
   at Microsoft.AspNetCore.StaticWebAssets.Tasks.DefineStaticWebAssetEndpoints.ParallelWorker.Process(Int32 i, ParallelLoopState _)
   at Microsoft.AspNetCore.StaticWebAssets.Tasks.DefineStaticWebAssetEndpoints.<>c.<Execute>b__16_2(Int32 i, ParallelLoopState loop, ParallelWorker state)
   at System.Threading.Tasks.Parallel.<>c__DisplayClass17_0`1.<ForWorker>b__1()
   at System.Threading.Tasks.Task.InnerInvokeWithArg(Task childTask)
   at System.Threading.Tasks.Task.<>c__DisplayClass176_0.<ExecuteSelfReplicating>b__0(Object <p0>)<---

问题描述

使用Visual Studio 2022创建基于.NET 8的Web项目(包括ASP.NET Core Web App、Razor Pages、Blazor WebAssembly等),项目刚创建未添加任何代码或包,直接构建就失败,报错:
The 'DefineStaticWebAssetEndpoints' task failed unexpectedly. System.InvalidOperationException: Last write time is not defined for some files in wwwroot/lib/.

已尝试的无效方案

  • 将项目迁移至OneDrive外的D:\Projects目录
  • 禁用Git集成
  • 清除模板缓存并重置VS模板路径
  • 确保.NET 8 SDK已完全更新

解决思路与变通方案

临时变通方案

  1. 手动更新文件修改时间:
    打开项目wwwroot目录,选中所有报错的文件(如app.css、bootstrap相关文件),右键进入「属性」-「高级」,确认「存档」属性勾选后保存;或手动修改文件内容(如添加空格再删除)并保存,触发系统更新文件的LastWriteTime元数据。

  2. 临时跳过StaticWebAssets验证:
    在项目的.csproj文件中添加以下配置,禁用StaticWebAssets的处理任务:

    <PropertyGroup>
        <DisableStaticWebAssetsProcessing>true</DisableStaticWebAssetsProcessing>
    </PropertyGroup>
    

    注意:此方案仅用于临时调试,发布生产环境前必须移除该配置,否则静态资源可能无法正常加载。

根源排查方向

  1. 检查目录权限:
    确认项目所在目录的当前用户拥有完全控制权限,避免因权限不足导致系统无法写入文件元数据。

  2. 更新Visual Studio:
    将Visual Studio 2022更新至17.8及以上版本(适配.NET 8正式版的最低版本),旧版本VS可能存在模板生成时的文件元数据写入bug。

  3. 排查第三方工具干扰:
    若系统安装了磁盘加密、云同步类工具,暂时关闭这类工具后重新创建项目,排查是否是工具干扰了文件元数据的正常写入。

内容的提问来源于stack exchange,提问作者Jakkrit Piti

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 22:44:54