繁体   English   中英

Podfile所需的CocoaPods AFNetworking

[英]CocoaPods `AFNetworking` required by `Podfile`

安装Pod后出现此问题。 我想从AFNetworking获得responseSerializer,因为IDMPhotoBrowser使用了它,但是当我在pod文件中指定AFNetworking的版本时,会导致此错误。 如何解决?

- `AFNetworking (~> 2.5)` required by `Podfile`
- `AFNetworking (~> 1.3.3)` required by `IOSLinkedInAPI (1.0.0)`
- `AFNetworking` required by `IDMPhotoBrowser (1.5.2)`
- `AFNetworking (~> 1.3.0)` required by `RestKit/Network (0.23.1)`

也许你应该写这个

platform :ios,'8.0'

pod 'AFNetworking', '~> 3.0.0-beta.0'

代替

pod 'AFNetworking', '~> 3.0'

在执行Pod安装之前,尝试将AFNetworking的Pod添加为依赖项Po“ AFNetworking”。 首先下载。 确保版本正确,我的意思是2.5.1。

我的pod版本是0.38.2。

解决方法是:在Podfile的开头添加平台:ios,'7.0'

7.0也可以是6.05.08.0 ,这取决于Podfile中的项目。您可以将CD插入〜/ .cocoapods / repos / master / Specs文件夹,然后打开所需的.podspec文件。在这些文件中,他们可能会声明ios sdk的版本。将7.0替换为最大版本号。尝试更新或重新安装。这可能对您有所帮助。

我的pod文件如下:

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '7.0'
pod 'AFNetworking','~>3.0'

当我安装pod时,出现如下错误:

jxr-pc:iOS star$ pod install
Updating local specs repositories
Analyzing dependencies
[!] Unable to satisfy the following requirements:
- `AFNetworking (~> 3.0)` required by `Podfile`

怎么了?

您可以通过将cocoapods降级到0.37版来解决此问题,或者可以将0.37版添加到pod中( sudo gem install cocoapods -v 0.37.0 ),然后为项目设置指定的cocoapods( pod _0.37.0_ setup )。 我所做的-我从Mac安装了0.39版。

之所以突然出现,是因为某些库需要不同的AFNetworking版本。

platform :ios, '8.0'
pod 'AFNetworking', '~> 3.0'

将这些行放到最后,它将起作用;

这是一个不错的解决方案。 您只需执行以下步骤即可编辑Pod的依存关系,然后在主Pod文件中添加最新的Pod。 例如,我在两个需要AFNetworking 2.xContentfulDeliveryAPI v2.0 SignalR-ObjC发生冲突,需要AFNetworking 3.x 您要做的是:

1-转到用户主文件夹,并显示隐藏文件(如果尚不可见)。 复制specs json文件并将其粘贴到podfile所在项目的主目录中。

~/.cocoapods/repos/master/Specs/<yourpodname>/<versions>/<pod-spec>.json

2-打开JSON File并找到关键的' dependencies ',现在可以更改pod依赖或删除依赖。 就我而言,我改变了:

"dependencies": {
    "AFNetworking": [
      "~>2.0"
    ],
    "SocketRocket": [
      "~>0.4"
    ]
  }

"dependencies": {
    "AFNetworking": [
      "~>3.0"
    ],
    "SocketRocket": [
      "~>0.4"
    ]
  }

3-保存JSON并通过将pod spec路径指定为来编辑您的podfile

    pod 'SignalR-ObjC', :podspec => 'SignalR-ObjC.podspec.json'

4-全部设置。 从终端运行pod install命令,它现在可以正常工作。

注意:此答案将使您能够加载所需的Pod,但是要更改的从属Pod可能具有目标更改的Pod使用的某些库。 为此,您需要编辑文件中的代码

  • AFNetworking (~> 2.5)要求的Podfile AFNetworking (~> 2.5)
  • AFNetworking (~> 1.3.3) IOSLinkedInAPI (1.0.0)所需的AFNetworking (~> 1.3.3) IOSLinkedInAPI (1.0.0)
  • AFNetworking IDMPhotoBrowser (1.5.2)所需的IDMPhotoBrowser (1.5.2)
  • AFNetworking (~> 1.3.0) RestKit/Network (0.23.1)所需的AFNetworking (~> 1.3.0) RestKit/Network (0.23.1)

发生此问题是因为所需的AFNetworking版本(〜> 1.3.0)小于当前版本(〜> 2.5) 因此,请使用较少版本的AFNetworking(〜> 1.3.0)而不是AFNetworking(〜> 2.5) 所有人都会感到高兴。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM