0%

CocoaPods 相关问题

这里记录CocoaPods出现的一些问题和解决方法。

错误一

1
2
3
$ gem source -a https://gems.ruby-china.org
Error fetching https://gems.ruby-china.org:
bad response Not Found 404 (https://gems.ruby-china.org/specs.4.8.gz)

原因

没有找到对应的路径,最后发现官网 公告域名变了.org 替换为 .com

解决方法

1
$ gem source -a https://gems.ruby-china.com

错误二

1
Error installing pods:active support requires Ruby version >= 2.2.0

原因

当前的 ruby 版本太低, 需要升级ruby 版本

解决方法

安装rvm(Ruby版本管理器)

1
2
3
4
5
6
7
8
9
10
11
12
// 判断是否安装rvm
$ rvm -v
command not found: rvm (如果显示这个是未安装,显示的是版本号请跳过这一部分直接进入安装ruby)
// 安装rvm
$ curl -L get.rvm.io | bash -s stable

// 使刚添加的命令生效
source ~/.rvm/scripts/rvm

// 参考是否安装成功
$ rvm -v
rvm 1.29.4 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io]

安装ruby

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// 查看版本列表
$ rvm list known
[ruby-]1.8.6[-p420]
[ruby-]1.8.7[-head] # security released on head
[ruby-]1.9.1[-p431]
[ruby-]1.9.2[-p330]
[ruby-]1.9.3[-p551]
[ruby-]2.0.0[-p648]
[ruby-]2.1[.10]
[ruby-]2.2[.10]
[ruby-]2.3[.7]
[ruby-]2.4[.4]
[ruby-]2.5[.1]
[ruby-]2.6[.0-preview2]
ruby-head
...

// 安装 ruby(这里安装的是2.5.1)
$ rvm install 2.5.1

// 查看安装
$ ruby -v
ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-darwin16]

错误三

1
2
3
/Library/Ruby/Site/2.0.0/rubygems.rb:250:in `find_spec_for_exe': can't find gem cocoapods (>= 0.a) (Gem::GemNotFoundException)
from /Library/Ruby/Site/2.0.0/rubygems.rb:278:in `activate_bin_path'
from /usr/local/bin/pod:22:in `<main>’

原因

ruby更新版本后导致pod找不到依赖的版本导致的

解决方法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
// 查找pod 路径
$ where pod
/usr/local/bin/pod

// 删除pod的执行文件
$ sudo rm -rf /usr/local/bin/pod
Password:

// 查看 gem 依赖的cocoapods
$ gem list

*** LOCAL GEMS ***


activesupport (4.2.6)

bigdecimal (1.2.7, default: 1.2.0)

CFPropertyList (2.3.3, 2.2.8)

claide (1.0.1, 1.0.0)

cocoa (0.1.6)

cocoapods (1.1.1)

cocoapods-core (1.1.1, 1.0.1)

cocoapods-deintegrate (1.0.1, 1.0.0)

cocoapods-downloader (1.1.2, 1.1.1, 1.0.1)

cocoapods-plugins (1.0.0)

cocoapods-search (1.0.0)

cocoapods-stats (1.0.0)

cocoapods-trunk (1.1.1, 1.0.0)

cocoapods-try (1.1.0, 1.0.0)

colored (1.2)

concurrent-ruby (1.0.2)

escape (0.0.4)

ffi (1.9.14)

fourflusher (2.0.1, 2.0.0, 0.3.2)

fuzzy_match (2.0.4)

gh_inspector (1.0.2)

i18n (0.7.0)

io-console (default: 0.4.2)

json (default: 1.7.7)

libxml-ruby (2.6.0)

minitest (5.9.0, default: 4.3.2)

molinillo (0.5.1, 0.4.5)

nap (1.1.0)

netrc (0.7.8)

nokogiri (1.5.6)

pods (0.0.1)

psych (default: 2.0.0)

rake (default: 0.9.6)

rdoc (default: 4.0.0)

rubygems-update (2.6.6)

sqlite3 (1.3.7)

test-unit (default: 2.0.0.0)

thread_safe (0.3.5)

tzinfo (1.2.2)

xcodeproj (1.3.3, 1.1.0)

// 删除依赖的 cocoapods (这里删除的和上面👆要一致)
$ sudo gem uninstall cocoapods-core -v 1.1.1
$ sudo gem uninstall cocoapods -v 1.1.1
$ sudo gem install cocoapods

// 安装pod
$ sudo gem install -n /usr/local/bin cocoapods
$ pod setup