运行Flutter工程遇到的坑~

448 阅读1分钟

问题一

描述

执行 flutter run 报错

CocoaPods not installed or not in valid state. Error launching application on iPhone 14 Pro.

image.png

分析

根据错误提示可知,该错误是cocoapods版本导致的。通过查看本地pod版本

> $ pod --version                                 
1.5.3

很明显,flutter要求的版本要1.10.0以上,所以需要更新pod。

sudo gem install -n /usr/local/bin/ -v 1.11.0

但是更新pods操作并不生效,原因在于本地默认使用的ruby版本太低导致的。MacOS上默认会带有2.*.*版本的ruby。

>$ ruby --version                                                             
ruby 2.5.0p0 (2017-12-25 revision 61468) [x86_64-darwin17]

解决

1.安装rbenv

$ git clone git://github.com/sstephenson/rbenv.git ~/.rbenv
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
$ echo 'eval "$(rbenv init -)"' >> ~/.bashrc

可通过 **which rbenv**查看是否安装了, 如果已安装了rbenv,可省略git的第一步操作。
注:看好使用~/.zshrc 还是~/.bashrc

2.安装 ruby-build

git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build

不安装会导致使用rbenv时报错:rbenv: no such command `install'

3. 安装\更新 Ruby

查看可用的 ruby版本

rbenv install --list

image.png 安装相应版本ruby

rbenv install 3.0.6

image.png

检查版本列表

rbenv versions

image.png 选择使用的ruby版本

rbenv global 3.0.6

rbenv 中的 Ruby 版本有三个不同的作用域:全局(global),本地(local),当前终端(shell)。 查找版本的优先级是 当前终端 > 本地 > 全局

4.安装指定版本的pod

sudo gem install cocoapods -v 1.10.0
which pod(用于安装后查看安装目录)

搞定