CocoaPods - 一个自定义的动态框架 - 无法获得最新版本的框架

时间:2017-03-27 07:21:26

标签: ios swift xcode cocoapods ios-frameworks

我在Xcode中的项目包括静态框架和一个自定义动态框架。这个动态框架包括一些其他静态框架。 当我尝试编译自定义动态框架本身时,一切都很好。通过强制pod定义文件,我能够强制安装最新版本的框架(Alamofire,Realm等)

platform :ios, '9.0'

但是当我编译我的项目时,即使我使用上面的代码,我也会得到旧的框架。 当我尝试强制使用pod作为显式版本时,

pod 'Alamofire', '~> 4.4.0'

获得3.5.1版本。 是否还有其他明确的设置可以强制CocoaPods在版本中更准确? 最初动态框架的项目是为Swift 2.3版本制作的,实际上需要Alamofire 3.5.1的版本。

任何帮助将不胜感激。

3 个答案:

答案 0 :(得分:0)

也许在您的podfile中尝试以下内容:

pod 'Alamofire', :git => 'https://github.com/Alamofire/Alamofire.git', :tag => '4.4.0'

这会绕过你当地的规格回购并直接从git。

答案 1 :(得分:0)

您的计算机上当前安装了哪个版本的CocoaPod?哪个版本最初用于在项目中建立Pods?当我更新CocoaPods时,我发现了一个问题,pod update无法正常工作,只删除Podfile.lockPods/目录不足以使事情正确。

那说我会做以下事情:

  • 将CocoaPods更新为最新版本
  • pod repo update获取最新的Pod规范
  • pod deintegrate完全删除项目中的Pod
  • pod install在项目中重新创建Pod

答案 2 :(得分:0)

解决方案有点棘手。我一开始并没有意识到动态框架下的pod实际上不能直接从顶层项目执行,并且有一个配置JSON文件,它实际上是在动态框架下管理pod。 所以pod版本实际上是硬编码的。