Ubuntu24编译Cypress报错:无法找到ensure-icons模块求助
解决Ubuntu 24编译Cypress develop分支/v14.4.1的依赖与脚本错误
第一个错误:模块导入路径问题
错误核心是Node.js 24对ES模块解析要求严格,而Cypress代码中导入未带.js后缀,导致找不到指定模块。
解决步骤:
- 编辑
/home/some_user/cypress/packages/extension/gulpfile.ts,将导入语句从import '../../scripts/ensure-icons'修改为import '../../scripts/ensure-icons.js' - 或者切换Node.js版本到Cypress官方支持的范围(推荐v18或v20),用nvm快速切换:
nvm install 20 nvm use 20
第二个错误:Postinstall脚本执行失败
该错误是第一个问题导致后续流程中断引发的,解决完第一个错误后,按以下步骤排查:
安装系统底层依赖:Ubuntu 24需要补充Cypress编译所需的桌面环境相关依赖:
sudo apt-get install build-essential libgtk-3-dev libnotify-dev libgconf-2-4 libnss3 libxss1 libasound2重新安装项目依赖:清理现有依赖后重新安装,避免缓存问题:
rm -rf node_modules yarn.lock yarn install分步执行脚本命令:如果仍报错,拆分执行postinstall里的命令,定位具体失败环节:
- 应用补丁:
patch-package - 去重依赖:
yarn-deduplicate --strategy=highest - 重建sqlite3:
lerna run rebuild-better-sqlite3 --scope @packages/server - 编译项目:
yarn build && yarn build-v8-snapshot-dev
- 应用补丁:
注意:确保使用Yarn Classic(1.x版本),Cypress项目暂不支持Yarn 2+,可通过
yarn set version classic切换版本
内容的提问来源于stack exchange,提问作者Ahmed Ashour
相关产品推荐
相关产品推荐

