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

Expo项目导出至裸React Native时遭遇jetify执行失败错误

解决Expo Eject时Jetify Postinstall脚本失败的问题

嘿,我看你在把已上线App Store的Expo项目导出为裸React Native项目时,碰到了jetify相关的postinstall脚本错误,这个问题我之前处理过,给你几个针对性的解决办法:

错误原因分析

从你提供的npm日志可以看到,核心错误是:

error obey@0.0.0 postinstall: jetify
error spawn ENOENT

这说明系统找不到jetify命令——jetify是用来将第三方React Native库的旧Android支持库引用转换为AndroidX的工具,通常作为开发依赖存在,你的项目要么没安装它,要么配置有问题。

解决步骤

1. 手动安装Jetify作为开发依赖

首先确保jetify已经安装到项目里,运行以下命令:

# 使用npm
npm install --save-dev jetify

# 或者使用yarn
yarn add --dev jetify

2. 修改package.json的postinstall脚本

打开项目根目录的package.json,找到scripts里的postinstall字段,把它改成:

"scripts": {
  // ...其他脚本
  "postinstall": "npx jetify"
}

用npx jetify代替直接写jetify,可以确保npm调用的是本地项目安装的jetify,而不是依赖全局安装的版本(全局没装的话就会报错)。

3. 清理缓存并重新安装依赖

有时候npm缓存或旧的依赖文件会导致问题,执行以下操作彻底清理后重新安装:

# 删除node_modules和package-lock.json
rm -rf node_modules package-lock.json

# 重新安装依赖
npm install

如果使用yarn的话,对应命令是:

rm -rf node_modules yarn.lock
yarn install

4. (可选)升级Node.js和npm版本

你的日志里显示Node版本是v10.16.3,npm是v6.13.7,这两个版本都比较旧了,虽然不是直接导致问题的原因,但旧版本可能存在兼容性问题。建议升级到Node.js的LTS版本(比如v18.x或v20.x),配套升级npm到最新兼容版本,能减少后续的依赖问题。

完成这些步骤后,再重新运行expo eject应该就能顺利完成项目导出了。

内容的提问来源于stack exchange,提问作者Gintak27

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.06 15:32:32