• Circular dependency issuse on cocoapods version(0.36.0) 全然解决方式(非降版本号)


    此前的文章中。以前提到在cocoapods依赖管理版本号假设超过0.34.4。比方0.35, 0.36.0等版本号中。

    运行"pod install" 或者 "pod update" , xmppframework 会出现循环依赖问题。

    There is a circular dependency between XMPPFramework/Core and XMPPFramework/Authentication'

    解决这个问题的暂时方案,是降版本号 cocoapods 到 0.34.4.

    可是。随着cocoapods版本号持续升级。这个问题始终没有得到根本解决。在这里分享该解决方式例如以下

    请依照下面步骤进行

    1. 升级cocoapods版本号到最新版本号。本文撰写时,最新版本号为0.36.0

     命令行: sudo gem install cocoapods


    2. podfile保持不变。

     

    pod 'XMPPFramework'


    3. 运行命令行。更新本机 ~/.cocoapods 文件夹下的全部库

    pod setup


    4. 国外的朋友提供了一个改动过的XMPPFramework的podspec文件。这个文件在xmppframework官方的github里,是不一样的。

    眼下xmppframewokr 3.6.4的最新版本号。

    这个改动版的文件是关键,訪问例如以下链接,而且下载该文件。

    https://github.com/ChatSecure/XMPPFramework/blob/f1364d1dd9bc8d0843b79ee8abe261154473d8a0/XMPPFramework.podspec.json


    5. 找到本机例如以下路径的文件。

    使用Finder的go to folder

    ~/.cocoapods/repos/master/Specs/XMPPFramework/3.6.4/XMPPFramework.podspec.json


    6. 把第4步下载的文件,覆盖到5步的路径中。


    7. 然后运行 pod install 或者 pod update


    8. 到此,循环依赖的错误不会再出现。

    pod 也顺利工作。但还没有结束。后面是更重要的步骤


    9. build workspace 会发现build 失败。错误是 XMPPFramework.h文件

    #ifdef HAVE_XMPP_SUBSPEC_SYSTEMINPUTACTIVITYMONITOR
    #import "XMPPSystemInputActivityMonitor.h"
    #endif

    10. 这时须要从官方的github上,

    https://github.com/robbiehanson/XMPPFramework/tree/master/Extensions/SystemInputActivityMonitor

    找到例如以下两个文件

    XMPPSystemInputActivityMonitor.h

    XMPPSystemInputActivityMonitor.m

    并复制到project目录中的例如以下路径其中,假设没有目录SystemInputActivityMonitor,须要手动创建SystemInputActivityMonitor

    /Pods/XMPPFramework/Extensions/SystemInputActivityMonitor/XMPPSystemInputActivityMonitor.h

    11. 完毕上述工作之后。又一次build workspace。会发现。一切正常


    以上方案尽管不算完美。但也算是兼顾了cocoapods的最新版本号。至于第9步和第10步。也能够不做。仅仅是这种话,须要凝视xmppframework.h文件里相应的import。孰轻孰重,仅仅能自己衡量了。


  • 相关阅读:
    Intent flag 与启动模式的对应关系
    Activity的启动模式---总结
    NDK---使用,开发步骤
    自定义ViewGroup
    android:process结合activity启动模式的一次实践
    Java单元测试之覆盖率统计eclemma
    Java单元测试之JUnit篇
    结对编程1
    个人作业1——四则运算题目生成程序(基于控制台)
    Coding使用方法
  • 原文地址:https://www.cnblogs.com/yxysuanfa/p/7345359.html
Copyright © 2020-2023  润新知