一、pod 常见问题
1.查看本地pod 版本号:pod --version
2.更新本地cocoapods的spec资源配置信息:pod repo update,提示最新版本可用
3.安装pod时,执行 sudo gem install cocoapods 的时候报错:You don't have write permissions for the /usr/bin directory.
这是因为在OSX
系统中,/usr/bin
属于系统级别的保护,任何人不能写入,包括root
也一样,是绝对禁止写入的,唯一的办法就是安装到/usr/local/bin
里面去。因为/usr/bin
这个目录太敏感了,是任何病毒都想要攻克的地方,所以苹果对此做了严格的禁止。
所以改为 执行:sudo gem install -n /usr/local/bin cocoapods,结束后执行pod --version 查看版本,亲测成功
4.如果问题3执行报错Mac OS 10.14: Failed to build gem native extension
如果是之前的 Mac OS 版本,网上都是通过 xcode-select --install
来解决,但是我在 Mac OS 10.14 版本下,依然存在报错。
最终找到解决方式,执行:open /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg
然后根据提示安装即可
再次执行sudo gem install -n /usr/local/bin cocoapods
执行完毕 查看版本 pod --version,pod 升级成功
附:pod install 和 pod update的区别
https://www.jianshu.com/p/d92226205557
二、下面是podfile指定版本号时的逻辑运算符:
Besides no version, or a specific one, it is also possible touse logical operators:
'> 0.1' Any version higher than 0.1 0.1以上
'>= 0.1' Version 0.1 and any higher version 0.1以上,包括0.1
'< 0.1' Any version lower than 0.1 0.1以下
'<= 0.1' Version 0.1 and any lower version 0.1以下,包括0.1
In addition to the logic operators CocoaPods has an optimisicoperator ~>:
'~> 0.1.2' Version 0.1.2 and the versions up to 0.2, not including 0.2 and higher 0.2以下(不含0.2),0.1.2以上(含0.1.2)
'~> 0.1' Version 0.1 and the versions up to 1.0, not including 1.0 and higher 1.0以下(不含1.0),0.1以上(含0.1)
'~> 0' Version 0 and higher, this is basically the same as not having it. 0和以上,等于没有此约束
如果出现
/Library/Ruby/Site/2.6.0/rubygems/specification.rb:1411:in `rescue in block in activate_dependencies’: Could not find ‘json’ (>= 1.5.1) among 49 total gem(s) (Gem::MissingSpecError)
Checked in 'GEM_PATH=。。。。。。
再次执行gem install cocoapods就可以了