错误现象
真机运行正常,打包报错如下:
rsync error: some files could not be transferred (code 23) at /AppleInternal/Library/BuildRoots/c2cb9645-dafc-11ed-aa26-6ec1e3b3f7b3/Library/Caches/com.apple.xbs/Sources/rsync/rsync/main.c(996) [sender=2.6.9]
解决方案1(推荐)
- 使用sudo gem update cocoapods更新cocoapods,目前我的更新到了1.12.1版本
- 删除项目根目录下的Podfile.lock、项目名.xcworkspace文件和Pods文件夹
- 重新使用 pod install,再次打包正常
解决方案2
在Xcode项目中 Pods -> Targets Support Files -> Pods-项目名 -> Pods-项目名-frameworks 中(大约在第44行)将
source="$(readlink "${source}")"
替换为
source="$(readlink -f "${source}")"
这段代码主要是用于将动态库(即.framework文件)复制到Xcode项目的build目录下。
具体来说,{TARGET_BUILD_DIR}表示的是build目录的路径,${FRAMEWORKS_FOLDER_PATH}表示的是在build目录中所有framework的存储位置