React Native 0.60.4 detox postinstall.js 安装错误
Posted
技术标签:
【中文标题】React Native 0.60.4 detox postinstall.js 安装错误【英文标题】:React Native 0.60.4 detox postinstall.js install error 【发布时间】:2019-12-19 12:06:10 【问题描述】:无法通过npm install
或yarn
安装排毒。
yarn add --dev detox
将在 postbuild.js 中失败`
这个问题是为了回应 wix/detox 的问题跟踪政策: https://github.com/wix/Detox/issues/1523
按照最新教程开始排毒。
react-native init example // (0.60.4)
brew update
brew tap wix/brew
brew install applesimutils
yarn global add detox-cli // you shouldn't need this
yarn add --dev detox // add this package in /example app
安装 detox 将退出并出现子进程错误。
错误:
Command Failed: <YOUR_PROJECT_PATH>/node_modules/detox/scripts/build_framework.ios.sh
at checkExecSyncError (child_process.js:629:11)
at Object.execFileSync (child_process.js:647:13)
at Object.<anonymous> (<YOUR_PROJECT_PATH>/node_modules/detox/scripts/postinstall.js:2:27)
at Module._compile (internal/modules/cjs/loader.js:776:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:787:10)
at Module.load (internal/modules/cjs/loader.js:653:32)
at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
at Function.Module._load (internal/modules/cjs/loader.js:585:3)
在此处遵循他们的指南: https://github.com/wix/Detox/blob/master/docs/Introduction.GettingStarted.md
更新:请参阅下面的解决方案,能够毫无问题地安装 detox。
【问题讨论】:
【参考方案1】:之前安装的 detox 版本需要 Legacy Build System
如何正确升级:
删除 ~/Library/Detox/ 删除 ~/Library/Developer/Xcode/DerivedData/*
yarn add -D detox
// 安装时没有问题
这个问题是怎么发生的:
如果您安装了依赖于早期 Xcode 的早期版本的 Detox,您将遇到旧版和新构建系统之间的冲突。
然后,Detox 将查看您的 ~/Library/Detox
数据并由于默认选择新构建系统而无法构建
我通过执行以下操作解决了这个安装错误:
在 xcode 10.3 中进入
File > Workspace Settings
在共享工作区设置下选择旧版构建系统 重新安装 detox(它不会使用旧版本并且不会出错)
【讨论】:
以上是关于React Native 0.60.4 detox postinstall.js 安装错误的主要内容,如果未能解决你的问题,请参考以下文章
ReferenceError:找不到变量:React Native 0.60.4 中的状态
Detox - 测试模式在 React Native 中的可见性
React-Native 和 Detox:无法关闭位置弹出窗口