在`../node_modules/react-native/Libraries/FBReactNativeSpec`中没有找到`FBReactNativeSpec`的podspec

时间:2021-03-25 12:13:57

标签: xcode react-native podfile

我已将 react-native 升级到 0.64,但在运行 pod install 后出现此错误。

No podspec found for `FBReactNativeSpec` in `../node_modules/react-native/Libraries/FBReactNativeSpec`

我尝试删除 node_module、删除 pod 文件、解体,但仍然遇到此问题。

有什么帮助吗?

4 个答案:

答案 0 :(得分:3)

较新版本的 ReactNative(从 0.64 开始)将 FBReactNativeSpec 存储在另一个文件夹中。 您需要用 Pod 声明中的新路径替换旧的 FBReactNativeSpec 路径。

打开你的 Podfile 并找到这一行:

pod 'FBReactNativeSpec', :path => "./node_modules/react-native/Libraries/FBReactNativeSpec"

并通过替换此路径来修复路径:

pod 'FBReactNativeSpec', :path => "../node_modules/react-native/React/FBReactNativeSpec"

答案 1 :(得分:1)

当我更新到新的 react-native 版本 0.64.1 时,当我尝试 pod install 时出现上述错误。我通过替换我的podfile 如下所示

https://raw.githubusercontent.com/react-native-community/rn-diff-purge/release/0.64.1/RnDiffApp/ios/Podfile

require_relative '../node_modules/react-native/scripts/react_native_pods'
require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'

platform :ios, '10.0'

target 'RnDiffApp' do
  config = use_native_modules!

  use_react_native!(
    :path => config[:reactNativePath],
    # to enable hermes on iOS, change `false` to `true` and then install pods
    :hermes_enabled => false
  )

  target 'RnDiffAppTests' do
    inherit! :complete
    # Pods for testing
  end

  # Enables Flipper.
  #
  # Note that if you have use_frameworks! enabled, Flipper will not work and
  # you should disable the next line.
  use_flipper!()

  post_install do |installer|
    react_native_post_install(installer)
  end
end

我像上面那样更改了我的 podfile。然后我在我的终端上尝试了 pod install。它工作正常。

答案 2 :(得分:0)

试试 npx react-native-clean-project 为所有询问的提示输入“Y”。

答案 3 :(得分:0)

这些天我遇到了同样的问题,发现是因为我运行了 npm audit fix 命令。它自动更新了 react native 版本,这让 podfile 莫名其妙地混淆了。降级您的 rn 包或重置您的版本控制应该可以工作