React Native Expo iOS构建失败:未知oid 'fs.inotify.max_user_watches'
iOS构建失败问题解决
问题原因
你遇到的构建失败和Windows本地电脑无关,核心问题是fs.inotify.max_user_watches是Linux系统独有的内核参数,用来调整文件系统监听的上限值,但Expo的iOS构建是在macOS环境下运行的,macOS根本不支持这个参数,所以执行sudo sysctl -w fs.inotify.max_user_watches=524288时会直接报错,导致yarn脚本退出。
解决步骤
- 移除无用命令:直接删掉package.json中
eas-build-pre-install脚本里的这条sysctl命令,因为它对iOS构建完全没有作用,这条命令原本是给Android/Linux构建环境准备的。 - 平台区分脚本(可选):如果需要保留Android构建时的这个配置,修改脚本让它只在Android构建时执行:
"eas-build-pre-install": "if [ \"$EAS_BUILD_PLATFORM\" = \"android\" ]; then sudo sysctl -w fs.inotify.max_user_watches=524288; fi"
修改后重新执行eas build --platform ios即可正常构建。
内容的提问来源于stack exchange,提问作者Rasmus
相关产品推荐
相关产品推荐

