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

Windows下Go项目执行make命令提示make (e=2)系统找不到指定文件如何解决

问题根因

你遇到的报错本质是Windows原生环境没有内置sh解释器,make执行时尝试调用sh运行脚本但找不到对应程序,和脚本内容、docker-compose路径没有关系,这也是你换测试脚本后依然报相同错误的原因。

可选择的解决方案

  • 方案1(最推荐):使用WSL2环境运行

    Windows下开发Go、容器相关项目优先用WSL2环境,完全规避跨平台兼容问题:
    1. 开启Windows的WSL2功能,安装Ubuntu等主流Linux发行版
    2. 在WSL2环境内安装make、Go、Docker等工具链
    3. 将项目放在WSL2的文件系统中执行make infra up即可正常运行
  • 方案2:给Windows安装sh运行环境

    不想用WSL的话可以安装带sh的兼容层:
    1. 安装Git Bash、Cygwin或MinGW任意一种工具,推荐Git Bash(安装Git时默认附带)
    2. 将sh.exe所在目录加入系统环境变量PATH:Git Bash的sh.exe默认路径为C:\Program Files\Git\bin
    3. 重启终端使环境变量生效后重新执行make命令
  • 方案3:修改Makefile指定shell路径

    不想改环境变量的话可以直接在Makefile开头显式指定shell路径:
    # 替换为你本地sh.exe的实际路径,注意用正斜杠或者双反斜杠
    SHELL := C:/Program Files/Git/bin/sh.exe
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 22:30:04