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

Next.js项目执行npm run dev报错:sh: next: command not found

解决MacOS上运行Next.js项目时next: command not found报错

问题场景

将Windows开发的Next.js代码仓库克隆到MacOS后,执行npm i成功生成node_modules,但运行npm run dev时报错:

rakibulb@Rakibuls-MacBook-Air advanced-todolist % npm run dev

> todo-enhanced@0.1.0 dev
> next dev

sh: next: command not found

已尝试操作:

  • 删除重装node_modules
  • 更新npm及Node版本

项目package.json配置如下:

{  
  "name": "todo-enhanced",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "dev": "next dev",
    "build": "next build",
    "start": "next start",
    "lint": "next lint"
  },
  "dependencies": {
    "@hookform/resolvers": "^3.3.4",
    "@next-auth/prisma-adapter": "^1.0.7",
    "@prisma/client": "^5.13.0",
    "@radix-ui/react-dialog": "^1.0.5",
    "@radix-ui/react-label": "^2.0.2",
    "@radix-ui/react-select": "^2.0.0",
    "@radix-ui/react-slot": "^1.0.2",
    "@vercel/postgres": "^0.8.0",
    "bcrypt": "^5.1.1",
    "class-variance-authority": "^0.7.0",
    "clsx": "^2.1.1",
    "lucide-react": "^0.378.0",
    "next": "14.2.3",
    "next-auth": "^4.24.7",
    "react": "^18",
    "react-dom": "^18",
    "react-hook-form": "^7.51.4",
    "react-hot-toast": "^2.4.1",
    "tailwind-merge": "^2.3.0",
    "tailwindcss-animate": "^1.0.7",
    "zod": "^3.23.8"
  },
  "devDependencies": {
    "@types/bcrypt": "^5.0.2",
    "@types/node": "^20",
    "@types/react": "^18",
    "@types/react-dom": "^18",
    "eslint": "^8",
    "eslint-config-next": "14.2.3",
    "postcss": "^8",
    "prisma": "^5.13.0",
    "tailwindcss": "^3.4.1",
    "typescript": "^5"
  }
}

当前终端路径与package.json处于同一层级。

解决方法

1. 用npx指定本地next命令

修改package.json中的scripts,通过npx直接调用本地node_modules中的next:

"scripts": {
  "dev": "npx next dev",
  "build": "npx next build",
  "start": "npx next start",
  "lint": "npx next lint"
}

修改后重新运行npm run dev即可。

2. 配置npm本地bin路径到环境变量

MacOS下确保本地node_modules/.bin被加入PATH:

  • 终端运行echo $PATH,检查是否包含./node_modules/.bin
  • 若未包含,打开~/.zshrc(或~/.bashrc,根据使用的shell)添加:
    export PATH="./node_modules/.bin:$PATH"
    
  • 执行source ~/.zshrc(对应你的配置文件)使修改生效,再重新运行项目。

3. 彻底清理缓存并重装依赖

Windows和MacOS生成的package-lock.json可能存在差异,执行以下命令彻底重置依赖:

npm cache clean --force
rm -rf node_modules package-lock.json
npm install

4. 检查Node版本兼容性

Next.js 14.2.3要求Node.js版本为18.17+或20.6+:

  • 运行node -v查看当前版本
  • 若版本不符,用nvm切换到兼容版本:
    nvm install 20
    nvm use 20
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.23 19:19:52