Xcode 10 关于 CocoaPods 安装失败的问题

升级完Xcode10之后, 想升级一下CocoaPods,当执行 pod install 之后, Terminal 中显示了一大堆报错信息, 其中核心信息如下:

RuntimeError - [!] Xcodeproj doesn't know about the following attributes {"inputFileListPaths"=>[], "outputFileListPaths"=>[]} for the 'PBXShellScriptBuildPhase' isa.

google 一下之后发现是因为项目中使用到了 Run Script Phase, 而 inputFileListPathsoutputFileListPaths 是 Xcode 10 中新增的属性, 因此旧版本的 CocoaPods 无法解析. 所以, 最好的解决办法就是升级 CocoaPods.

gem install cocoapods --pre

此时又报错:

Unable to download data from https://gems.ruby-china.org - bad response Not Found 404 (https://gems.ruby-china.org/specs.4.8.gz)

再次 google, 发现问题原因是本人使用的 gem 源是 ruby 中国, 而 ruby 中国由于域名备案问题换了域名, 所以原来的域名无法解析(404). 以下是 ruby 中国原网站上的公告:

因域名备案问题,.org 域名无法继续提供 RubyGems 镜像服务,我们提供 .com 代替 .org 的域名,其他一切不变!!

没办法, 只好换源咯.

gem sources --add https://gems.ruby-china.com --remove https://gems.ruby-china.org

再次安装 CocoaPods, 再次报错:

You don't have write permissions for the /usr/bin directory.

/usr/bin 没有写权限, 这是由于 macOS 10.11 之后增加了 rootless 机制, 导致即使在 root 权限下依然无法修改文件. 最终, 在网上找到一个解决办法, 即修改 CocoaPods 安装目录:

gem install cocoapods --pre -n /usr/local/bin

查看安装结果:

pod --version
1.6.0.beta.1

至此, CocoaPods 更新完成, 项目中也可以正常使用.

猜你喜欢

转载自blog.csdn.net/Smile_chunyang/article/details/83110165