zoukankan      html  css  js  c++  java
  • cocoapods的安装和使用,遇到的错误

      在网上也参考了其它朋友的资料.今天试了一下cocoapods的使用.发觉这东西就是靠网络而生存的.目前没发现有什么可以提高效率的地方.(吐槽下,公司网络太次.)

    主要参考网址:http://blog.csdn.net/totogo2010/article/details/8198694

    那怎么用呢?先安装CocoaPods。

    1、CocoaPods是跑在Ruby的软件,安装可能需要几分钟,安装命名:

    sudo gem install cocoapods

    这里可能网络被墙,不能下载.在终端中敲入这个命令之后,会发现半天没有任何反应。

    我们可以用淘宝的Ruby镜像来访问cocoapods。按照下面的顺序在终端中敲入依次敲入命令:

    $ gem sources --remove https://rubygems.org/ //等有反应之后再敲入以下命令 $ gem sources -a http://ruby.taobao.org/

    为了验证你的Ruby镜像是并且仅是taobao,可以用以下命令查看:
    $ gem sources -l
    只有在终端中出现下面文字才表明你上面的命令是成功的:
    *** CURRENT SOURCES *** http://ruby.taobao.org/

    这时候,你再次在终端中运行:

    $ sudo gem install cocoapods
     

    (感谢方教授,让我们多操作了几步)

    2、如果想为每个第三方库生成文档,那运行

    brew install appledoc  这步是可选的。

    安装完成后提示:

    如果你的Ruby环境不够新的话,可能要更新一下:

    gem update --system

    先试试搜索功能,你需要什么库,可以用pod来搜索,比如要用JSONKit这个库:

    pod search是搜索命名,后面写上库名称就行了。

    pod search JSONKit

    搜索时间会很长.出来结果后,进行下一步

    初始化

    好了, 在终端shell中cd 来到你要管理的项目,运行:pod install 

    (运行过程中,会提示找不到Podfile.自行在工程目录下(含.xcodeproj的文件夹内),建立一个Podfile的空白文件.

    我在终端输入:

    vim Podfile

    打开空白文件后,再输入:

    :wq

    退出文件后,再运行:

    pod install

    )

    运行完之后你会发现你的项目目录下是这样的:

    工程目录里多了*.xcworkspace  pod等文件。这是pod生成的项目管理文件,打开LibDemo.xcworkspace 项目文件,在Xcode里看到是这样的目录结构:

    添加一个库:

     vim Podfile 打开文件,把刚才搜索到的JSONkit添加进去。

    platform :ios
    pod 'JSONKit'

    保存退出。

    运行:pod update 

    这样是就把JSONKit 库下载并和本地项目关联起来了,这是Xcode提示你更新项目

    点Revert。

    这时你看项目pod部分,多了JSONKit库.好了,第三方库就这么神奇的加进来。

    (我的并没有自动提示,看着终端的信息,等更新完毕后,我重新打开了XXXX.xcworkspace文件)

    头文件路径

    那试试看使用JONSKit.h,在ViewController.m里引用下。找不到头文件,怎么办?还没设置头文件的目录,在项目的Target的里设置一下:

    如下图所示,输入${SRCROOT}  后面选上recursive。

    完美。

    (我并没操作,头文件路径.因为直接就可以引入头文件了)

    其他的第三方库。

    Podfile文件中添加后pod update下就ok。

    platform :ios,         '5.0'
    pod 'JSONKit'
    pod 'AFNetworking'
    pod 'MBProgressHUD'
    pod 'Reachability'
    pod 'Nimbus/Core'
    Nimbus太大了,我只需要 Core,也可以这么写。
     
     
            啰里啰嗦的把东西粘贴完了.还是那句话,这个工具对网络依赖严重.如果网络不好,还是老老实实的自己下载,配置吧.
     

    错误:

    Generating Pods project
    2015-09-26 13:38:12.200 ruby[45480:1877574] [MT] DVTAssertions: ASSERTION FAILURE in /Library/Caches/com.apple.xbs/Sources/IDEFrameworks/IDEFrameworks-8227/IDEFoundation/Initialization/IDEInitialization.m:590
    Details: Assertion failed: _initializationCompletedSuccessfully
    Function: BOOL IDEIsInitializedForUserInteraction()
    Thread: <NSThread: 0x7ff9551239f0>{number = 1, name = main}
    Hints: None
    Backtrace:
    0 0x0000000104f0ca5c -[DVTAssertionHandler handleFailureInFunction:fileName:lineNumber:assertionSignature:messageFormat:arguments:] (in DVTFoundation)
    1 0x0000000104f0c1e9 _DVTAssertionHandler (in DVTFoundation)
    2 0x0000000104f0c455 _DVTAssertionFailureHandler (in DVTFoundation)
    3 0x0000000104f0c3b7 _DVTAssertionFailureHandler (in DVTFoundation)
    4 0x00000001064c5f5c IDEIsInitializedForUserInteraction (in IDEFoundation)
    5 0x00000001090c5eb9 +[PBXProject projectWithFile:errorHandler:readOnly:] (in DevToolsCore)
    6 0x00000001090c7a3e +[PBXProject projectWithFile:errorHandler:] (in DevToolsCore)
    7 0x00007fff8dcb7f44 ffi_call_unix64 (in libffi.dylib)
    Abort trap: 6

     处理方法:

    打开终端,依次执行以下方法:

    sudo gem uninstall cocoapods 
    sudo gem install cocoapods
    pod install

    步骤是卸载, 安装. 再安装pods配置中的第三方.

  • 相关阅读:
    Git 常用命令 Better
    HTTP Cookie 总结 Better
    clientWidth, offsetWidth, scrollWidth的区别 Better
    Math.round() 0.5时的特殊性 Better
    screenY、pageY、clientY、offsetY的区别 Better
    Oracle 数据快速导出工具:sqluldr2
    使用 barman的备份和归档PostgreSQL
    Android RK 内置应用 不可卸载
    AS SerialPort 编译依赖库
    RK 看门狗 WatchDog
  • 原文地址:https://www.cnblogs.com/xclidongbo/p/4223675.html
Copyright © 2011-2022 走看看