realm|realm 新版本(Ver3.14) pod install失败的解决方案
pod install时,下载realm又费时还出错了。Ver3.12版本之前还是好的,Ver3.14就不行了。
出错信息:
[!]/bin/bash -c
set -e
sh build.sh cocoapods-setup
core is not a symlink. Deleting...
Downloading dependency: sync 3.15.1 from https://static.realm.io/downloads/sync/realm-sync-cocoa-3.15.1.tar.xz
Downloading sync failed:
https://static.realm.io/downloads/sync/realm-sync-cocoa-3.15.1.tar.xz
curl:(56)LibreSSL SSL_read: SSL_ERROR_SYSCALL,errno 54
在执行sh build.sh cocoapods-setup 这个命令的时候,去下载realm-sync-cocoa-3.15.1.tar.xz这个文件了,结果下载失败了。
Github上的issues里找到了类似问题,就是因为国内的网络原因,也有人提出了解决方案,就是事先下载好所需要的文件。但是由于realm版本升级,解决方案也有变化了。
pod install 失败后,build.sh这个文件可以在工程文件夹的/Pods/Realm目录中找到。
build.sh部分内容:
if [ "$download_type" == "core" ]; then下载realm-sync-cocoa-3.15.1.tar.xz时,会先放到$TMPDIR/sync_bin这个临时目录下面,并且重命名为
version=$REALM_CORE_VERSION
url="${REALM_BASE_URL}/core/realm-core-${version}.tar.xz"
elif [ "$download_type" == "sync" ]; then
version=$REALM_SYNC_VERSION
【realm|realm 新版本(Ver3.14) pod install失败的解决方案】url="${REALM_BASE_URL}/sync/realm-sync-cocoa-${version}.tar.xz"
else
echo"Unknown dowload_type: $download_type"
exit1
fi
echo"Downloading dependency: ${download_type} ${version} from ${url}"
if[ -z"$TMPDIR"]; then
TMPDIR='/tmp'
fi
temp_dir=$(dirname"$TMPDIR/waste")/${download_type}_bin
mkdir -p"$temp_dir"
tar_path="${temp_dir}/${download_type}-${version}.tar.xz"
temp_path="${tar_path}.tmp"
sync_3.15.1.tar.xz。
就是执行这个步骤时非常的耗时并且出错了。
所以需要先通过网页或者命令行手动下载好realm-sync-cocoa-3.15.1.tar.xz,然后放到$TMPDIR/sync_bin这个临时目录下面,并且重命名为sync_3.15.1.tar.xz。然后将Pods文件夹清空后,重新执行pod install。
这样会节省大量时间并且不会出错,不过即使是这样,安装realm也还是很慢。
「3.15.1」这个版本号经常会变,最新的版本号可以查看这个文件获得。
推荐阅读
- Realm
- 一篇博文搞定goctl(V1.3.0新版本解决goctl|一篇博文搞定goctl:V1.3.0新版本解决goctl rpc protoc的问题)
- iOS数据库之FMDB、Realm、WCDB
- 抢同事的realme真我X50|抢同事的realme真我X50 Pro开箱,原来真香5G旗舰是这样由来
- “无意识”与“本真”的碰撞,realme同深泽直人讲解背后设计的那些事
- 新版本系统适配: Android 12 中的兼容性变更
- 安卓中利用xutils框架下载新版本apk
- Other|悬浮窗一个怎么够(微信新版本满足你的一心多用)
- Shiro 之Subject、SecurityManager、Realm源码分析
- spring+shiro 整合之自己注册会话和自写realm