首页 > 解决方案 > React-Native init 项目未运行

问题描述

我一直在使用 expo cli 来创建和开发 react-native 项目。我用来生成新的 expo react-native 项目的命令是:

npx expo-cli init demo

我现在正在尝试用 react-native cli 替换 expo。

我在运行 MacOS 11.1 的 MacBook Pro 2015 上,我的笔记本电脑上有一个 iPhone 11 模拟器,我过去曾在我的 expo 应用程序中使用过该模拟器。

我正在按照此处找到的 react-native 网站的文档来创建示例项目。

我已经安装了 brew (3.0.4) 和 node (12.19.0)。使用 nvm (0.33.11) 安装节点。我能够成功安装 watchman (4.9.0)、XCode、XCode 命令行工具 (12.4) 和 cocoapods。

我能够成功地创建这样的应用程序:

npx react-native init AwesomeProject

然后我使用以下命令在一个终端窗口中启动 Metro:

npx react-native start

然后我尝试使用以下命令在我的 iOS 模拟器上启动我的应用程序:

npx react-native run-ios

哪个开始构建:

info Found Xcode workspace "AwesomeProject.xcworkspace"
info Building (using "xcodebuild -workspace AwesomeProject.xcworkspace -configuration Debug -scheme AwesomeProject -destination id=8E8DFEC9-403B-4486-A5E0-F9A715CB8FFC")
⠴ Building the app.........

在输出大量错误日志之前,它会运行几秒钟。日志太长了,我无法向上滚动到错误的第一行。

当我导航到 /Users/username/.npm/_logs/... 文件时,错误输出从这里开始:

20 timing npm:load Completed in 14ms
21 timing command:exec Completed in 9746ms
22 verbose stack Error: command failed
22 verbose stack     at ChildProcess.<anonymous> (/Users/ahmedkhan/.nvm/versions/node/v12.19.0/lib/node_modules/npm/node_modules/@npmcli/promise-spawn/index.js:64:27)
22 verbose stack     at ChildProcess.emit (events.js:314:20)
22 verbose stack     at maybeClose (internal/child_process.js:1021:16)
22 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:286:5)
23 verbose pkgid AwesomeProject@0.0.1
24 verbose cwd /Users/ahmedkhan/Documents/AwesomeProject
25 verbose Darwin 20.2.0
26 verbose argv "/Users/ahmedkhan/.nvm/versions/node/v12.19.0/bin/node" "/Users/ahmedkhan/.nvm/versions/node/v12.19.0/lib/node_modules/npm/bin/npm-cli.js" "exec" "--" "react-native" "run-ios"
27 verbose node v12.19.0
28 verbose npm  v7.5.2
29 error code 1
30 error path /Users/ahmedkhan/Documents/AwesomeProject
31 error command failed
32 error command sh -c react-native "run-ios"
33 verbose exit 1

我一直无法在网上找到与此类似的任何其他问题。老实说,我唯一能想到的是我正在使用通过 nvm 安装的节点,但我不明白为什么会出现问题。

编辑我使用brew删除了nvm并安装了节点(15.10.0),我遇到了同样的问题,所以这不是nvm的错。

19 verbose npm-session ac762135a77a2325
20 timing npm:load Completed in 20ms
21 timing command:exec Completed in 142599ms
22 verbose stack Error: command failed
22 verbose stack     at ChildProcess.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/@npmcli/promise-spawn/index.js:64:27)
22 verbose stack     at ChildProcess.emit (node:events:378:20)
22 verbose stack     at maybeClose (node:internal/child_process:1067:16)
22 verbose stack     at Process.ChildProcess._handle.onexit (node:internal/child_process:301:5)
23 verbose pkgid AwesomeProject@0.0.1
24 verbose cwd /Users/ahmedkhan/Documents/AwesomeProject
25 verbose Darwin 20.2.0
26 verbose argv "/usr/local/Cellar/node/15.10.0_1/bin/node" "/usr/local/lib/node_modules/npm/bin/npm-cli.js" "exec" "--" "react-native" "run-ios"
27 verbose node v15.10.0
28 verbose npm  v7.5.3
29 error code 1
30 error path /Users/ahmedkhan/Documents/AwesomeProject
31 error command failed
32 error command sh -c react-native "run-ios"
33 verbose exit 1

标签: react-nativeexporeact-native-iosnvmreact-native-cli

解决方案


推荐阅读