我在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的版本。
任何帮助将不胜感激。
答案 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.lock
和Pods/
目录不足以使事情正确。
那说我会做以下事情:
pod repo update
获取最新的Pod规范pod deintegrate
完全删除项目中的Pod pod install
在项目中重新创建Pod 答案 2 :(得分:0)
解决方案有点棘手。我一开始并没有意识到动态框架下的pod实际上不能直接从顶层项目执行,并且有一个配置JSON文件,它实际上是在动态框架下管理pod。 所以pod版本实际上是硬编码的。