使用Turborepo和Yarn工作空间时React Native monorepo中的Pod错误

c0vxltue  于 2023-02-19  发布在  React
关注(0)|答案(1)|浏览(122)

以下是Stack Overflow问题描述和标题的建议,可帮助您使用Turborepo和Yarn工作区打开React Native monorepo的问题:
标题:使用Turborepo和Yarn工作空间时React Native monorepo中的Pod错误
描述:
我尝试使用Turborepo和Yarn工作区为React Native项目设置monorepo,但我在使用Pod时遇到错误。错误消息为:

An error occurred while processing the post-install hook of the Podfile.

没有这样的文件或目录@rb_sysopen-../node_modules/react-native/package.json
我尝试过各种方法来解决这个问题,例如符号链接node_module/react-native目录,但到目前为止没有任何效果。我希望找到这个问题的解决方案,或者更好地了解可能导致它的原因。
在React Native monorepo中使用Turborepo和Yarn工作区时,是否有其他人遇到过此错误,如果有,您是如何解决的?

brgchamk

brgchamk1#

发生这种情况是因为你必须告诉Cocoapods在哪里可以找到react原生包。默认情况下,它会看起来比原来高一个目录(./..),这在用yarn工作空间重新组织代码库后是不正确的。
如果你像这样移动你的项目app =〉apps/app,那么你必须在Podfile中更改3件事

  • 1/2:在require_relative中添加“../../”,应位于播客文件的第2行和第3行
  • 3:将react_native_path参数添加到react_native_post_install
require_relative '../../../node_modules/react-native/scripts/react_native_pods'
require_relative '../../../node_modules/@react-native-community/cli-platform-ios/native_modules'

...

   react_native_post_install(
      installer,
      react_native_path = "../../../node_modules/react-native",
      :mac_catalyst_enabled => false
    )

相关问题