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

Ubuntu 20.04下npm start提示react-scripts未找到,求解决方案

解决「sh: 1: react-scripts: not found」错误的有效方案

问题背景

系统:Ubuntu 20.04
Node.js版本:v18.17.1
npm版本:v9.6.7
运行React项目时触发错误:sh: 1: react-scripts: not found,已重装Node.js/npm无效,全局安装react-scripts时出现大量依赖废弃警告,参考第三方方案还触发漏洞错误。

解决方案

1. 修复本地依赖(核心方案)

全局安装react-scripts无法替代项目本地依赖,优先处理项目内的依赖问题:

  • 删除本地依赖目录和锁定文件:
    rm -rf node_modules
    rm package-lock.json
    
  • 清理npm缓存,避免缓存导致的异常:
    npm cache clean --force
    
  • 重新安装项目所有依赖:
    npm install
    
  • 尝试启动项目:
    npm start
    

2. 手动安装本地react-scripts

如果上述步骤无效,直接指定安装项目本地的react-scripts:

npm install react-scripts --save

安装完成后再次执行npm start启动项目。

3. 移除全局react-scripts避免冲突

若之前全局安装过react-scripts,可能导致版本冲突,建议卸载:

sudo npm uninstall -g react-scripts

项目的package.json中scripts字段的start命令默认会调用本地node_modules内的react-scripts,无需全局依赖。

4. 用nvm管理Node版本(规避权限/版本兼容问题)

全局使用sudo执行npm命令容易引发权限和版本兼容问题,推荐用nvm管理Node.js版本:

  • 安装nvm后,切换到当前项目所需的Node.js版本(v18.17.1):
    nvm use 18.17.1
    
  • 再重新执行依赖安装和项目启动步骤,可避免大部分权限相关的异常。

关于依赖废弃警告的说明

全局安装react-scripts时出现的废弃警告,是因为全局版本的依赖包未及时更新,而项目本地安装的react-scripts会匹配当前create-react-app的稳定版本,废弃警告会大幅减少或消失,因此不推荐全局安装react-scripts。

内容的提问来源于stack exchange,提问作者Berre Sena KIRAÇ

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 03:08:30