📜  CocoaPods 找不到 pod "React Core" 的兼容版本:在 Podfile 中:react-native-fetch-blob(来自 `..node_modules react-native-fetch-blob`)被解析为 0.10.6,这取决于 React Cor - Javascript(1)

📅  最后修改于: 2023-12-03 15:14:11.318000             🧑  作者: Mango

CocoaPods 找不到 pod "React Core" 的兼容版本

当你在执行 pod install 命令时,有可能会遇到以下报错信息:

[!] CocoaPods could not find compatible versions for pod "React Core":
  In Podfile:
    react-native-fetch-blob (from `../node_modules/react-native-fetch-blob`) was resolved to 0.10.6, which depends on
      React Core - JavaScript (< 0.56.0, >= 0.55.4)

None of your spec sources contain a spec satisfying the dependency: `React Core - JavaScript (< 0.56.0, >= 0.55.4)`.

You have either:
 * out-of-date source repos which you can update with `pod repo update` or with `pod install --repo-update`.
 * mistyped the name or version.
 * not added the source repo that hosts the Podspec to your Podfile.

Note: as of CocoaPods 1.0, `pod repo update` does not happen on `pod install` by default.

这个报错信息的意思是,CocoaPods 找不到与你当前项目中的 react-native-fetch-blob 描述文件(即 Podfile)中指定的 React Core 版本兼容的版本。因此,这篇文章将详细介绍如何解决这个问题。

解决方案

要解决这个问题,有两个方案可供选择,分别是:

  • 升级 react-native-fetch-blob 到指定版本的 React Core 兼容版本
  • 升级 React Core 到指定版本的 react-native-fetch-blob 兼容版本

下面,我们将逐一介绍这两个方案的实现方法。

方案一:升级 react-native-fetch-blob

要升级 react-native-fetch-blob,只需要修改 Podfile 文件中 react-native-fetch-blob 的版本即可。例如,假设当前 react-native-fetch-blob 的版本为 0.10.6,要升级到 0.10.8,则可以修改 Podfile 文件如下:

pod 'react-native-fetch-blob', '0.10.8'

然后执行 pod install 命令即可。

方案二:升级 React Core

同样地,要升级 React Core,只需要修改 Podfile 文件中 React 的版本即可。假设当前 React 的版本为 0.55.4,要升级到 0.56.0,则可以修改 Podfile 文件如下:

pod 'React', '0.56.0'

然后执行 pod install 命令即可。

总结

CocoaPods 找不到 pod "React Core" 的兼容版本,这个问题一般是由于不同的第三方库之间版本之间的兼容性问题导致的。解决这个问题的方法一般有两种,一种是升级 react-native-fetch-blob 到指定版本的 React Core 兼容版本,另一种是升级 React Core 到指定版本的 react-native-fetch-blob 兼容版本。我们可以根据自己的实际需要选择其中一种方案进行解决。