问题描述
我们的CI构建最近开始失败,并出现如下错误:
detox test -c android.emu.release
detox[3061] ERROR: [cli.js] Error:
Cannot find module 'jest-cli/build/cli/args'
本地detox test -c android.emu.release
成功。知道怎么了吗?
解决方法
如果您看到以下错误:
Cannot find module 'jest-cli/build/cli/args'
您应将jest-cli
添加到package.json
的{{1}}中,然后重新运行devDependencies
,例如:
npm install
如果您使用的 "devDependencies": {
"jest": "26.x.x",+ "jest-cli": "26.x.x",
版本(25.x)已过时,请仍然确保您的jest
版本与匹配 jest-cli
是以下版本:
jest
P。 S.关于它为什么发生。尽管 "devDependencies": {
"jest": "^25.5.4",+ "jest-cli": "^25.5.4",
并不打算包含任何重大更改,但是由于另一种安装方法(通过detox@17.4.7
而不是普通的lerna bootstrap
),该问题已经超出了测试生命周期。与npm install
不同,lerna
的当前版本会将npm
放入jest-cli
中,这就是Detox无法找到一个的原因,尽管node_modules/jest/node_modules/jest-cli
软件包本身具有{{ 1}}清单中标记为 peerDependency 的软件包中,并显示相关警告:
detox