1. ホーム
  2. react-native

[解決済み] CocoaPods は、ポッド "ReactCommon/jscallinvoker" の互換性のあるバージョンを見つけられませんでした。

2022-05-16 04:50:01

質問

RN v0.62にアップデートしたところ、iOS上でアプリを実行すると以下のエラーが発生します。

!] CocoaPods could not find compatible versions for pod "ReactCommon/jscallinvoker":
  In snapshot (Podfile.lock):
    ReactCommon/jscallinvoker (from `../node_modules/react-native/ReactCommon`)

  In Podfile:
    ReactCommon/jscallinvoker (from `../node_modules/react-native/ReactCommon`)

None of your spec sources contain a spec satisfying the dependency: `ReactCommon/jscallinvoker (from `../node_modules/react-native/ReactCommon`)`.

node_modulesを全て削除し、npm iを行いました。また、iOSディレクトリにpod installを行いましたが、問題は解決されませんでした。podのレポ更新も行いました。

どうすれば解決しますか?

以下のような場合 React native 0.62バージョン

だから私はそれを理解する

Podfileの以下の行を書き換えます。

pod 'ReactCommon/jscallinvoker', :path => "../node_modules/react-native/ReactCommon"

pod 'ReactCommon/callinvoker', :path => "../node_modules/react-native/ReactCommon"

編集します。

に更新した場合 React Native バージョン 0.63

削除 Podfile.lock をiOSフォルダから削除してください。 行う npm i

開く podfile をiOSフォルダから開く

すべて削除して、以下の内容をコピーします。

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

platform :ios, '10.0'

target 'RNTodo' do
  config = use_native_modules!
  use_react_native!(:path => config["reactNativePath"])

  target 'RNTodoTests' 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 these next few lines.
  use_flipper!
  post_install do |installer|
    flipper_post_install(installer)
  end
end

target 'RNTodo-tvOS' do
  # Pods for RNTodo-tvOS

  target 'RNTodo-tvOSTests' do
    inherit! :search_paths
    # Pods for testing
  end
end

置換 RNTodo を自分のプロジェクト名に置き換えて、ターミナルから iOS フォルダに cd して、次のようにします。 pod install とすれば、すべてうまくいくはずです。

また RN 0.63 で iOS 9 のサポートが打ち切られました。