Carthage未使用已安装最新版本问题求助
这种情况大概率是系统里存在多个Carthage版本,或者终端环境变量优先级导致旧版本被优先调用了,给你一步步排查解决的方法:
先确认当前终端实际调用的Carthage路径
打开终端执行:which carthage正常brew安装的路径应该是
/usr/local/bin/carthage(指向/usr/local/Cellar/carthage/0.34.0/bin/carthage)。如果输出的是其他路径(比如/usr/bin/carthage),说明旧版本的Carthage还在系统里,且优先级更高。检查环境变量PATH的顺序
执行:echo $PATH看看
/usr/local/bin是不是排在其他可能存在旧Carthage的路径(比如/usr/bin)前面。如果不是,系统会优先找前面路径里的旧版本。针对性解决
如果是PATH顺序问题:
编辑你的shell配置文件(用bash的话是~/.bash_profile,用zsh的话是~/.zshrc),添加一行:export PATH="/usr/local/bin:$PATH"保存后执行
source ~/.bash_profile(或source ~/.zshrc)让配置生效,重启终端再查版本。如果发现有旧版本的Carthage文件:
比如which carthage输出的是/usr/bin/carthage,可以直接删除旧版本:sudo rm /usr/bin/carthage然后重启终端,再执行
carthage version确认是否更新到0.34.0。
清除终端命令缓存
有时候终端会缓存旧的命令路径,执行:hash -r之后再查版本试试。
最后执行carthage version验证,应该就能看到0.34.0了。
内容的提问来源于stack exchange,提问作者Joan Cardona

