更新Visual Studio 17.5.1后C# .NET编译报错:访问路径‘obj\berry’被拒绝
解决Strawberry Shake编译错误“访问路径'obj\berry'被拒绝”
以下是几个经过验证的解决步骤,按优先级尝试:
清理并重建项目
- 关闭Visual Studio
- 手动删除项目根目录下的
bin和obj文件夹 - 重新打开VS并执行重建解决方案操作
旧编译缓存文件被锁定是这类权限问题的常见原因,清理后能大概率解决。
检查文件夹权限
右键项目根目录,选择属性 -> 安全,确认当前用户对项目文件夹(包括子文件夹obj)拥有完全控制权限。如果权限不足,添加当前用户并赋予对应权限后重试编译。更新Strawberry Shake相关NuGet包
打开NuGet包管理器,将所有Strawberry Shake系列包(如StrawberryShake.CodeGeneration.CSharp、StrawberryShake.Transport.Http等)更新到与.NET 7兼容的最新稳定版本。旧版本包可能与新VS版本存在兼容性冲突。修改项目编译配置
在项目文件(.csproj)中添加以下配置,强制Strawberry Shake使用当前用户权限执行编译:<PropertyGroup> <StrawberryShake_UseSharedCompilation>false</StrawberryShake_UseSharedCompilation> </PropertyGroup>保存项目后重新编译。
关闭VS增量编译功能
打开VS的工具 -> 选项 -> 项目和解决方案 -> 生成并运行,取消勾选启用增量编译,重启VS后再尝试编译。增量编译机制有时会引发文件锁定冲突。
内容的提问来源于stack exchange,提问作者Hash_Dew
相关产品推荐
相关产品推荐

