You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Forge编译报错:权限被拒绝(os error 5),重映射配置无误

解决Forge编译时Access Denied (os error 5)问题

修复步骤

1. 统一路径分隔符

报错路径混用了正斜杠/和反斜杠\,这会导致Windows下权限识别异常:

  • 打开项目根目录的remappings.txt,将所有路径的反斜杠\替换为正斜杠/
  • 或者执行命令自动生成规范的重映射:
    forge remappings > remappings.txt
    

2. 以管理员身份运行终端

即使文件权限已设置,MinGW终端可能需要管理员权限才能访问依赖目录:

  • 右键点击MinGW终端图标,选择「以管理员身份运行」,进入项目目录后再执行forge build

3. 重新拉取依赖包

依赖包克隆时可能出现权限异常,重新拉取可解决:

rm -rf lib/chainlink-brownie-contracts
forge install smartcontractkit/chainlink-brownie-contracts --no-commit

4. 关闭Windows受控文件夹访问

实时防护关闭后,受控文件夹访问仍可能阻止Forge操作:

  • 打开「Windows安全中心」→「病毒和威胁防护」→「管理设置」→「受控文件夹访问」,关闭该功能,或把forge.exe(路径一般为~/.foundry/bin/forge.exe)添加到允许列表

报错日志(中文翻译)

DELL@Zinny-Bestowed MINGW64 ~/solidity-course/foundry-f23/foundry-fund-me-f23 (main)
$ forge build
[⠃] 编译中...2025-08-31T10:33:45.139897Z ERROR foundry_compilers_artifacts_solc::sources: error="C:/Users/DELL/solidity-course/foundry-f23/foundry-fund-me-f23/lib/chainlink-brownie-contracts\contracts/src/v0.8/shared/interfaces": 访问被拒绝。(os error 5)
[⠊] 编译中...
错误: 解析文件失败: "C:/Users/DELL/solidity-course/foundry-f23/foundry-fund-me-f23/lib/chainlink-brownie-contracts\contracts/src/v0.8/shared/interfaces": 访问被拒绝。(os error 5); 请检查配置的重映射
--> C:/Users/DELL/solidity-course/foundry-f23/foundry-fund-me-f23/src\FundMe.sol
chainlink-brownie-contracts/contracts/src/v0.8/shared/interfaces

内容的提问来源于stack exchange,提问作者Ezinne nwoke

火山引擎 最新活动