码迷,mamicode.com
首页 > 移动开发 > 详细

iOS 用CocoaPods做iOS程序的依赖管理(基于Alcatraz),以及升级Mac 10.11后Xcode的CocoaPods插件报错

时间:2016-04-29 15:33:37      阅读:268      评论:0      收藏:0      [点我收藏+]

标签:

创建Podfile文件

1.点击红框,

技术分享
Creat Podfile

2.接着弹出Podfile文件

技术分享


3.Edit Profile,

下面以添加融云SDK为例:

技术分享
技术分享
融云SDK

Podfile文件添加如下内容:

技术分享
Podfile Edited 1

也可以这样编辑:

技术分享
屏幕快照 2015-10-27 上午9.04.47.png
  1. "7.0"表示引入的第三方库所支持的最低版本
  2. target "CocoaPodsDemo"是你的目标应用项目
  3. do ... end 是你的作用域

Install Pods

1.点击Install Pods

技术分享
Install Pods

2.会看到Xcode输出信息如下:

技术分享
开始

3.下面信息提示SDK导入成功,以及Do you want to open the workspace?,当然是Yes

技术分享
SDK导入成功

4.重新打开工程后变成下面这个样子,

技术分享
Pods

5.本地工程中会多出下面几个文件,

技术分享

注意

现在,你的第三方库都已经下载完成并且设置好了编译参数和依赖,你只需要记住如下 2 点即可:

  1. 使用 CocoaPods 生成的 .xcworkspace 文件来打开工程,而不是以前的 .xcodeproj 文件。
  2. 每次更改了Podfile 文件,你需要重新执行一次pod update命令。

错误警告

1.对Podfile修改安装之后编译项目,可能会出现如下警告 :

The sandbox is not in sync with the Podfile.lock. Run ‘pod install‘ or update your CocoaPods installation.

此时,正确的做法是 Install Pods:

Launch Terminal and go to your project directory.
Update CocoaPods using the command pod install

技术分享

2.如果升级10.11后Xcode的CocoaPods插件报错,详细请参考:http://www.jianshu.com/p/5fc15906c53a

技术分享


文/devchen(简书作者)
原文链接:http://www.jianshu.com/p/08c2801ec57a
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。
更新升级10.11 cocoapods安装出问题最简单的解决方法

这是因为10.11把cocoapods直接干掉了

sudo gem install -n /usr/local/bin cocoapods
再加一句,完美解决
sudo xcode-select --switch /Applications/Xcode.app

使用CocoaPods做依赖管理,使我们的工程更加自动化的、集中的、简单直观的管理第三方开源库。你不用下载开源库的源代码引入工程,不用向工程中添加Framework,不用解决开源库和开源库以及开源库和工程之间的依赖、重复问题,也不用管开源库更新等一系列问题。有了CocoaPods,你只管任性,CocoaPods会为你做好一切。

更新Ruby

你需要会简单的使用命令行工具
CocoaPods唯一的限制就是在Ruby下运行,现在OS X都预装了Ruby,所以你只需要更新RubyGems到最新版本。
打开终端(control + space 真的很好用),然后输入如下的命令:

sudo gem update --system

会要你输入密码:
注意在终端中密码不显示字符,只要输完后按回车即可
用淘宝替换Ruby的默认源,替换命令如下:

gem sources --remove https://rubygems.org/
//等有反应之后再敲入以下命令
gem sources -a http://ruby.taobao.org/
//验证是否替换成功可以执行
gem sources -l
技术分享
如图所示则证明替换成功

安装CocoaPods

在终端中输入如下命令:

sudo gem install cocoapods

安装过程是这样的:

技术分享
安装完成如上图所示

在终端中输入如下命令来完成安装:

//将 CocoaPods Specs repository复制到你电脑上~/.cocoapods目录下
pod setup

它需要一点时间来完成,你等就是了
如果安装失败 ~/.cocoapods 里面是空的,就需要重新setup
命令如下:

pod repo remove master  
pod setup

完毕之后这个文件夹大概有 100多M,需要花费比较多时间,请耐心等待。
到这里你已经成功安装了CocoaPods!

创建配置Podfile

Xcode新建一个HelloWorld工程
打开终端,进入HelloWord工程目录下:

//工程的路径也可以直接拖进来     
cd /Users/lifupeng/Desktop/HelloWorld

在HelloWorld工程下创建一个默认的Podfile
执行命令:

pod init

用Xcode打开Podfile命令:

open -a Xcode Podfile

Podfile是这样的:

技术分享
Xcode打开Podfile

修改类库支持的最低iOS版本

# platform:ios, "6.0"修改成 #platform :ios, "7.0"
告诉CocoaPods你的工程是运行在iOS7下

为了让CocoaPods的引入不显示警告,在Podfile最上方加上:

inhibit_all_warnings!
// 也可以单独设置打开编译警告就好了
pod ‘Alamofire‘, ‘~> 3.0.0-beta.3‘, :inhibit_warnings => true

最后Podfile配置是这样的:

技术分享
Podfile配置

搜索第三方开源库

以搜索AFNetworking为例,搜索命令如下:

pod search AFNetworking

搜索结果如下:

技术分享
pod search AFNetworking结果


把下面内容:

pod ‘AFNetworking‘, ‘~> 2.5.0‘

添加到Podfile中

target ‘HelloWorld‘ do

pod ‘AFNetworking‘, ‘~> 2.5.0‘

end

然后保存关闭

安装开源库到你的工程中。

在终端中输入下面命令:(确保在终端的路径在项目目录下):

pod install
技术分享
至此 你已经成功的把AFNetworking添加到工程中了
[!] From now on use `ShowTracker.xcworkspace`

正如上面的警告提醒,从现在开始,你必须使用HelloWorld.xcworkspace来打开该项目。

为了让CocoaPods的引入不显示警告,在Podfile最上方加上:

inhibit_all_warnings!

重新运行pod install,编译项目,此时你应该看到警告已经不显示了。

PS: 对Podfile修改安装之后编译项目,可能会出现如下警告 :

   The sandbox is not in sync with the Podfile.lock. Run ‘pod install‘ or update your CocoaPods installation.

此时,正确的做法是:

1.Project Cleanup
2.Remove all libPods*.a in  Linked Frameworks and Libraries
3.Update CocoaPods using the command  pod install

测试:
添加 #import <AFNetworking.h>头文件
从此引用第三方库如此简单,希望各位用的爽

CocoaPods常用命令

1、pod install

根据Podfile文件指定的内容,安装依赖库,如果有Podfile.lock文件而且对应的Podfile文件未被修改,则会根据Podfile.lock文件指定的版本安装。
每次更新了Podfile文件时,都需要重新执行该命令,以便重新安装Pods依赖库。

2、pod update

若果Podfile中指定的依赖库版本不是写死的,当对应的依赖库有了更新,无论有没有Podfile.lock文件都会去获取Podfile文件描述的允许获取到的最新依赖库版本。

3、pod search

命令格式为:

$ pod search AFNetworking  AFNetworking为参数

4、查看版本

pod --version

5、卸载 cocoapods

sudo gem uninstall cocoapods

今天比较闲,就把CocoaPods升级到0.36.0正式版(以前写Swift的时候用的预览版)。然后就郁闷了,不管安装什么第三方都会出现类似于:
[!] Unable to satisfy the following requirements: - `AFNetworking (~> 2.5.1)

 一通的搜索后找到原因,因为GFW的缘故。解决方法:
pod repo remove master
pod repo add master https://gitcafe.com/akuandev/Specs.git
pod repo update


文/N年後(简书作者)
原文链接:http://www.jianshu.com/p/5fc15906c53a
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。

iOS 用CocoaPods做iOS程序的依赖管理(基于Alcatraz),以及升级Mac 10.11后Xcode的CocoaPods插件报错

标签:

原文地址:http://blog.csdn.net/qq_29696849/article/details/51277488

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!