react-native - 将 react-native 应用程序发布到 expo.io 时出现“ResourceNotFoundError”
问题描述
我有两个正在尝试发布的移动应用程序。第一个非常简单:
$ expo publish
但是,第二个向我显示了一个我无法理解的错误:
$ cd ~/sites/cvoeo-app
$ expo publish
There is a new version of expo-cli available (2.6.0).
You are currently using expo-cli 2.2.4
Run `npm install -g expo-cli` to get the latest version
[12:59:51] Publishing to channel 'default'...
[12:59:54] Building iOS bundle
[12:59:54] 404 - "{\"type\":\"ResourceNotFoundError\",\"errors\":[],\"message\":\"The resource `/Users/micah/sites/fun-food-friends/node_modules/expo/AppEntry.js` was not found.\"}"
[12:59:54] StatusCodeError: 404 - "{\"type\":\"ResourceNotFoundError\",\"errors\":[],\"message\":\"The resource `/Users/micah/sites/fun-food-friends/node_modules/expo/AppEntry.js` was not found.\"}"
at new StatusCodeError (/Users/micah/.config/yarn/global/node_modules/request-promise-core/lib/errors.js:32:15)
at Request.plumbing.callback (/Users/micah/.config/yarn/global/node_modules/request-promise-core/lib/plumbing.js:104:33)
at Request.RP$callback [as _callback] (/Users/micah/.config/yarn/global/node_modules/request-promise-core/lib/plumbing.js:46:31)
at Request.self.callback (/Users/micah/.config/yarn/global/node_modules/request/request.js:185:22)
at emitTwo (events.js:126:13)
at Request.emit (events.js:214:7)
at Request.<anonymous> (/Users/micah/.config/yarn/global/node_modules/request/request.js:1161:10)
at emitOne (events.js:116:13)
at Request.emit (events.js:211:7)
at IncomingMessage.<anonymous> (/Users/micah/.config/yarn/global/node_modules/request/request.js:1083:12)
我要发布的应用程序是我的“cvoeo-app”。
但是,调试消息显示,expo 正在抱怨来自一个完全不同的项目“fun-food-friends”应用程序缺少资源。我不小心在这个目录中创建了一个 react native 应用程序,将其删除,然后在那里重新创建了一个同名的 React JS 应用程序。
expo 找不到 fun-food-friends 文件并不令我感到惊讶——但令我惊讶的是,expo 甚至试图寻找它。为什么要在完全不同的目录树和项目中寻找资源?
解决方案
React native 在单独的终端窗口中运行服务器。
由于您运行了前一个应用程序并且没有关闭运行前一个应用程序时打开的终端窗口,因此当您运行新应用程序时,react-native 没有打开新的终端窗口来创建新服务器(因为一个已经在运行) 并且您设备上的新应用程序仍在与试图为您已删除的旧应用程序提供服务的旧服务器通信。
因此,您收到“ResourceNotFound”错误。
解决方案只是关闭您的旧终端并再次运行您的新应用程序。
推荐阅读
- sql-server - 将文件存储在数据库服务器中作为 FILESTREAM
- javascript - 仅显示样式一段时间然后删除
- javascript - 减少 CSS 样式
- python - 在大型排序列表中有效地找到大于某个值的最小数字的索引
- git - 由于主机密钥错误,无法在 jenkins 中使用 git fetch all
- javascript - 是否可以使用 javascript 为非 ajax 请求设置自定义标头?
- mongodb - 教义上是否有任何方法可以使用通过 ssh 隧道连接来连接 mongodb 或 sql
- prometheus - 刷新时流畅更改的 Prometheus 图
- wordpress - 通过按钮单击或 ESC 按钮进行页面紧急逃生
- android - 使用布局标签时,ConstraintLayout 内部不允许有元素