CocoaPods 使用教程 - Mac

作者: travin | 来源:发表于2016-04-07 23:55 被阅读3816次

    写在前面 : 安装CocoaPods的操作,自行google,这里着重简洁地使用,可以保存好随时翻查,遇到更多无法解决错误可以Issues我

    常用命令集合##

    // -V 加载过程会打印错误
    $ sudo gem install cocoapods -V 
    
    // 进入xx 文件夹
    $ cd xx
    
    // 初始化pod
    $ pod install 
    
    // 打开文件夹/文件
    $ open 
    
    // 找cocoaPod中的库
    $ pod search 
    
    // 查看cocoaPod的版本
    $ pod --version 
    

    遇到的错误###

    While executing gem ... (Gem::FilePermissionError)

    //  这段东西让我更新版本~
    CocoaPods 1.0.0.beta.6 is available.
    To update use: `gem install cocoapods --pre`
    [!] This is a test version we'd love you to try.
    
    // 于是我就更新, 然后报错
    $ gem install cocoapods --pre
    
    // 第一个错误 FilePermissionError 没有权限
    Fetching: cocoapods-core-1.0.0.beta.6.gem (100%)
    ERROR:  While executing gem ... (Gem::FilePermissionError)
        You don't have write permissions for the /Library/Ruby/Gems/2.0.0 directory.
    
    // 加上 sudo 再执行一次给与根权限
    $ sudo gem install cocoapods --pre
    

    While executing gem ... (Errno::EPERM)

    // 第二个错误
    ERROR:  While executing gem ... (Errno::EPERM)
        Operation not permitted - /usr/bin/xcodeproj
    
    // 一番搜索,更新,OS X 10.11系统上的问题大概就是缺小了这个文件 你可以 open /usr/bin/xcodeproj 打开看下
    $ sudo gem install -n /usr/local/bin cocoapods 建一个文件咯
    
    // 然后就成功了,
    Successfully installed cocoapods-0.39.0
    Parsing documentation for cocoapods-0.39.0
    1 gem installed
    

    Unable to satisfy the following requirements

    //  第三个错误
    [!] Unable to satisfy the following requirements:
    - `AFNetworking (> 3.0)` required by `Podfile`
    // they required a higher minimum deployment target. 必须给一个版本号, 编辑Podfile文件,给一个版本号
    Specs satisfying the `AFNetworking (> 3.0)` dependency were found, but they required a higher minimum deployment target.
    
    // 就是在platform :ios , ‘7.0’   加上了这个7.0 7.0以上才能用
    platform :ios , ‘7.0’  
    pod ‘AFNetworking’, ‘> 3.0’
    

    Could not automatically select an Xcode project

    // 第四个错误, 执行 pod update的时候报这个错, 意思是说你的Podfile文件找不到项目在哪里
    [!] Could not automatically select an Xcode project. Specify one in your Podfile like so:
        xcodeproj 'path/to/Project.xcodeproj'
    
    // 解决办法,打开编辑Podfile文件
    // 告诉它你的项目文件在哪里
      xcodeproj 'path/to/Project.xcodeproj'  也就是加上这句  'path/to/Project.xcodeproj'  这个是你项目的路径
    

    使用步骤 (整个步骤遇到的错误,记录在上面了)##

    零) 进入你的项目

    $ cd xx\xx\xx
    

    一) 在项目中创建Podfile文件
    这个文件的作用
    1, 它告诉 Cocoapods 你针对哪个平台哪个版本
    2, 它给 Cocoapods 一个你想要导入并设置的所有项目的列表。

    $ touch Podfile
    

    二) 打开Podfile文件,

    // 第一种方法 : 打开文件编辑
    $ open -e Podfile
    
    // 第二种方法 : 用Pico编辑器编辑
    $ pico
    
    // 第三种方法 : 用vim编辑器
    $ vim Podfile
    
    

    三) 编辑Podfile文件

    // 正如第一步Podfile文件的左右, 告诉他是用在IOS 还是MAC OS , 然后导入什么项目
    platform : ios  
    pod 'AFNetworking'
    

    四) 插一个步骤

    不知道项目什么版本,可以先搜索一下

    pod search AFNetWorking
    

    五) 编辑完Podfile文件当然要用,装完xxxx.xcworkspace就应该出来了,

    $ pod install
    

    其他操作##

    找到cocoapods文件夹

    // 去到cocoapods的文件夹~
    Travins-IMac:DY cuiwenlong$ cd ~/.cocoapods
    // 打开它 可以看到cocoapods的依赖树 , Specs那堆就是
    Travins-IMac:.cocoapods cuiwenlong$ open .
    // 查看cocoapods的文件夹大小
    Travins-IMac:.cocoapods cuiwenlong$ du -sh *
    
    cocoapods文件夹

    查看cocoapods版本,并且处理的一些操作

    // 查看当前安装了哪些版本
    $ gem list --local | grep cocoapods
    
    //例如我, 装了这么一堆版本
    cocoapods (0.39.0)
    cocoapods-core (1.0.0.beta.6, 0.39.0)
    cocoapods-deintegrate (1.0.0.beta.1)
    cocoapods-downloader (1.0.0.beta.2, 0.9.3)
    cocoapods-plugins (1.0.0.beta.1, 0.4.2)
    cocoapods-search (1.0.0.beta.1, 0.1.0)
    cocoapods-stats (1.0.0.beta.3, 0.6.2)
    cocoapods-trunk (1.0.0.beta.2, 0.6.4)
    cocoapods-try (1.0.0.beta.3, 0.5.1)
    
    // 卸载版本,先删除已经装过的版本(需要你选择卸载那个版本)
    $ sudo gem uninstall cocoapods
    
    // 或者强制删除某个版本
    $ gem uninstall cocoapods -v 1.0.0.beta.2, 0.6.4
    
    // 这个常用命令哪里也有啦
    $ sudo gem install cocoapods -v 0.35.0
    

    相关文章

      网友评论

        本文标题:CocoaPods 使用教程 - Mac

        本文链接:https://www.haomeiwen.com/subject/jizmlttx.html