折腾了一天,终于搞定了cocoapods的基本功能。
系统版本:10.11.6
xcode版本:8.0 (这是个坑)
工欲善其事,必先利其器....
1.安装
(1) 安装RVM
需要配置.bash_profile文件(在用户更目录下面 /Users/你的名字/.bash_profile),并在文件末尾添加“source ~/.profile"内容
vim .bash_profile
$ curl -L get.rvm.io | bash -s stable
(2) 升级ruby
ruby需要2.2.0以上版本,有坑,估计是 xcode8还没有兼容, 需先使用xcode7版本以及以下的版本
#查看当前ruby版本
$ ruby -v
$ rvm list known
如果提示command not found 请先安装rvm
$curl -L get.rvm.io | bash -s stable
$ sudo rvm install 2.3.0 #需要2.2以上
(3)安装cocoa pods,用淘宝的Ruby镜像来访问cocoapods
$ gem sources --remove https://rubygems.org/
//等有反应之后再敲入以下命令
$ gem sources -a https://ruby.taobao.org/
$ gem sources -l
只有在终端中出现下面文字才表明你上面的命令是成功的:
*** CURRENT SOURCES ***
$ sudo gem install cocoa pods
2.cocoapods使用——获取git
工程目录下创建 Podfile文件 或者 pod init
target 'test' do
platform :ios, '8.0'
pod 'MBProgressHUD','~>0.8 '
pod 'AFNetworking','~>2.6'
end
然后再使用pod install就可以把这些开源控件安装,以后就打开 yourproject.xcworkspace
使用pod update [PODNAME] 只有在你需要更新库到更新的版本时候用
pod outdated:
当你运行pod outdated命令,CocoaPods会列出那些所有较Podfile.lock里面有新版本的库(那些当前被安装着的库的版本)。这个意思就是,如果你运行pod update PODNAME,如果这个库有新的版本,并且新版本仍然符合在Podfile里的限制,它就会被更新。
3.cocoapods使用-如果包含本地路径,比如
pod 'MBProgressHUD’,:path=>’/Users/devin/test/MBProgressHUD’
需要再这个MBProgressHUD目录之下,生成MBProgressHUD.podspec
生成方式:
(1)pod spec create
(2)手动创建
其中注意修改:
s.description = <<-DESC
这里是具体描述
DESC
s.license = { :type => "MIT"}
库.podspec文件格式:
Pod::Spec.new do |spec|
spec.name = 'Reachability'
spec.version = '3.1.0'
spec.license = { :type => 'BSD' }
spec.homepage = 'https://github.com/tonymillion/Reachability'
spec.authors = { 'Tony Million' => 'tonymillion@gmail.com' }
spec.summary = 'ARC and GCD Compatible Reachability Class for iOS and OS X.'
spec.source = { :git => 'https://github.com/tonymillion/Reachability.git', :tag => 'v3.1.0' }
spec.module_name = 'Rich'
spec.ios.deployment_target = '9.0'
spec.osx.deployment_target = '10.10'
spec.source_files = 'Reachability/common/*.swift'
spec.ios.source_files = 'Reachability/ios/*.swift', 'Reachability/extensions/*.swift'
spec.osx.source_files = 'Reachability/osx/*.swift'
spec.framework = 'SystemConfiguration'
spec.ios.framework = 'UIKit'
spec.osx.framework = 'AppKit'
spec.dependency = 'SomeOtherPod'
end
本文参考链接:
http://guides.cocoapods.org/syntax/podspec.html
https://guides.cocoapods.org/using/the-podfile.html
http://blog.csdn.net/u012129719/article/details/52096662
http://blog.csdn.net/fairytale_1/article/details/51850734
http://blog.csdn.net/caspiansea/article/details/47824629
http://www.jianshu.com/p/b64b4fd08d3c