美文网首页iOS开发程序员
iOS | mac升级10.13.1后,你可能遇到的问题

iOS | mac升级10.13.1后,你可能遇到的问题

作者: Mrshang110 | 来源:发表于2017-12-29 18:28 被阅读69次

在升级10.13.1版本后,遇到了一些影响开发的问题,记录一下。

cocoapods无法使用

原因:

cocoapods无法使用的原因从命令行的错误提示可以发现:找不到ruby解释器了。为什么会这样呢?mac系统本身自带ruby解释器,升级系统的同时,ruby解释也升级了。在执行cocoapods命令时,依然会按照原来的路径去寻找解释器,找不到也就不奇怪了。

解决办法:

卸载重新安装就可以了,此时再执行cocoapods命令,就会按照新的路径去寻找解释器了。具体命令如下:

$ sudo gem uninstall cocoapods -v 1.2.0  (现有的版本)
$ sudo gem install cocoapods -v 1.3.1 

如果安装过程比较慢,可以切换下源,具体命令如下:

$ gem sources --add https://gems.ruby-china.org/ --remove https://rubygems.org/
$ gem sources -l
https://gems.ruby-china.org
# 确保只有 gems.ruby-china.org

pod.lock文件在pod操作后,添加了引号

加了多余的引号
这个问题,出现在新系统中,在和团队合作中,由于不同人的对pod.lock修改方式不一样,需要不断进行pod操作。
关于这个问题,在cocoapods的github issue中有很多讨论,暂时没从这些讨论中发现解决办法。点击查看github issue

在网上找到了一种解决办法:
ruby更新到相同版本,提出这种解决方案的人通过该方案解决了问题;点击查看详情

我尝试了这种方法,结果失败了。最后,我通过升级到最新版本的cocoapods解决了我们团队遇到的问题。

rvm无法管理安装其他版本ruby

在mac上,可以通过rvm管理多个版本的ruby,这和nvm管理node一样。在升级后,由于mac加强了SIP安全相关的模式,它禁止让软件以 root 身份来在 Mac 上运行,在升级到 OS X 10.11 中或许你就会看到部分应用程序被禁用了,这些或许是你通过终端或者第三方软源安装。

可以通过下面的步骤关闭该功能:

  • 重启 Mac,按住 Command+R 键直到 Apple logo 出现,进入 Recovery Mode
  • 点击 Utilities > Terminal
  • 在 Terminal 中输入 $ csrutil disable,之后回车
  • 重启 Mac

重启后,可以正常安装其他版本ruby了,具体命令如下:

$ rvm install 2.2.0
$ rvm use 2.2.0 --default 

相关文章

网友评论

    本文标题:iOS | mac升级10.13.1后,你可能遇到的问题

    本文链接:https://www.haomeiwen.com/subject/fbfwgxtx.html