微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

M1 mbp 中的新 RN 项目构建失败 “找不到节点确保它在 bash PATH 中或设置 NODE_BINARY 环境变量”

如何解决M1 mbp 中的新 RN 项目构建失败 “找不到节点确保它在 bash PATH 中或设置 NODE_BINARY 环境变量”

System:
    OS: macOS 11.3
    cpu: (8) arm64 Apple M1
    Memory: 124.86 MB / 16.00 GB
    Shell: 5.8 - /bin/zsh
  Binaries:
    Node: 16.0.0 - /opt/homebrew/bin/node
    Yarn: Not Found
    npm: 7.10.0 - /opt/homebrew/bin/npm
    Watchman: Not Found
  Managers:
    CocoaPods: 1.10.1 - /Users/chia/.rbenv/shims/pod
  SDKs:
    iOS SDK:
      Platforms: iOS 14.5,DriverKit 20.4,macOS 11.3,tvOS 14.5,watchOS 7.4
    Android SDK: Not Found
  IDEs:
    Android Studio: Not Found
    Xcode: 12.5/12E262 - /usr/bin/xcodebuild
  Languages:
    Java: Not Found
  npmPackages:
    @react-native-community/cli: Not Found
    react: 17.0.1 => 17.0.1 
    react-native: 0.64.0 => 0.64.0 
    react-native-macos: Not Found
  npmGlobalPackages:
    *react-native*: Not Found

新的 RN 项目创建成功,但 Xcode 构建失败。

错误

错误:找不到节点。确保它在 bash PATH 中或设置 NODE_BINARY 环境变量。

命令 PhaseScriptExecution 失败,退出代码非零

node 由 homebrew 安装,Intel mbp 没有这个错误

如何解决这个错误

PATH 中的节点

npm -g bin /opt/homebrew/bin

echo $PATH /Users/chia/.pyenv/shims:/Users/chia/.rbenv/shims:/Users/chia/.rbenv/bin:/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Apple/usr/bin

解决方法

sudo ln -s $(which node) /usr/local/bin/node

解决了。

,

@pekanchuan 在 https://stackoverflow.com/a/67342683/6512858 的回答对我有用。

sudo ln -s $(which node) /usr/local/bin/node

我想补充一点,如果此命令显示 /usr/local/bin/node: File exists,您需要知道链接已经存在,可能指向不同版本的节点。 就我而言,要安装 yarnbrew 安装了一个单独的 nodejs v15 并将文件链接到其二进制文件。 虽然我使用 nvm 来拥有 nodejs v14nodejs v16。这个额外的 nodejs 是问题中提到的错误的原因。

只需运行 sudo rm -f /usr/local/bin/node 即可删除链接,然后执行命令 sudo ln -s $(which node) /usr/local/bin/node 即可创建正确的链接。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。