最近我们的项目在使用react-native,准备将版本升级到0.72.5与之对应的react的版本是18.2,但是中间遇到很多问题,所以我就考虑自己新建一个rn项目作为demo去研究
- init一个rn项目
npx @react-native-community/cli init testProject --version 0.72.5
- 安装node_modules
···
npm install
··· - 打开ios项目pod install
pod install
但是在pod install 的时候遇到了依赖库下载不下来的问题
[!] Error installing boost
[!] /usr/bin/curl -f -L -o /var/folders/yr/x11nf_0968jfdn8q_vv7r1sr0000gn/T/d20250423-91638-mdyzwz/file.tbz http://127.0.0.1/boost_1_76_0.tar.bz2 --create-dirs --netrc-optional --retry 2 -A 'CocoaPods/1.16.2 cocoapods-downloader/2.1'
其实这里已经提示了让用本地服务去下载压缩包,于是
- 本地起服务
sudo apachectl start
在浏览器中输入http://127.0.0.1/,如果出现It Works,即证明服务可用,找到本地目录,/Library/WebServer/Documents
截屏2025-04-23 13.44.03.png
然后我们到node_modules的路径,路径为Fetching podspec for boost
from ../node_modules/react-native/third-party-podspecs/boost.podspec
截屏2025-04-23 11.27.49.png
打开文件boost.podspec
截屏2025-04-23 13.39.13.png
将
# spec.source = { :http => 'https://boostorg.jfrog.io/artifactory/main/release/1.76.0/source/boost_1_76_0.tar.bz2',
# :sha256 => 'f0397ba6e982c4450f27bf32a2a83292aba035b827a5623a14636ea583318c41' }
修改成
spec.source = { :http => 'http://127.0.0.1/boost_1_76_0.tar.bz2',
:sha256 => 'f0397ba6e982c4450f27bf32a2a83292aba035b827a5623a14636ea583318c41' }
5.下载boost_1_76_0.tar.bz2,打开网站https://boostorg.jfrog.io/artifactory,找到我们要下载的压缩包,下载到本地,然后放到/Library/WebServer/Documents
本地服务的目录下面
- 重新pod install