无法使用Cocoapods动态框架导入RestKit

时间:2015-01-20 03:01:29

标签: swift restkit cocoapods

我安装了cocoapods的预发布版本,0.26,并尝试安装最新版本的RestKit。在我的podfile中,我打开了use_frameworks!标志,强制cocoapods使用动态框架。

import RestKit放入我的swift文件会导致构建失败:'RKValueTransformers.h' file not found。 RestKit设置为使用少数其他库并将其标题包含在项目中(AFNetworking,RKValueTransformers,TransitionKit等)

根据cocoapod authors的文章,我认为问题在于导入和包含这些库的方式需要改变以适应动态框架和cocoapods。自动生成的伞文件需要导入这些文件以供使用,或者RestKit需要使用@import RKValueTransformers#import <RKValueTransformers/RKValueTransformers.h>导入这些库。

我不是Objective C,Cocoapods或RestKit的专家,所以想看看是否有人这样做了,我做错了什么,或者是否需要对RestKit进行更改。

2 个答案:

答案 0 :(得分:8)

这是RestKit中的一个错误。 Sam Giddin现在有一个开放的PR来解决问题。我创建了一个RestKit的分支,我在我的项目中使用来自PR的提交来解决这个问题,直到他们合并修复并发布新版本。

答案 1 :(得分:0)

我发布了similar question

的答案

这里是答案的直接副本,所以这不是仅限链接的答案:)

  

我正在与此进行长期斗争,而我正在构建一个依赖于RestKit的私有Swift-Framework-Pod。经过长时间的斗争,我分叉了RestKit并且破解了一个变通方法。

     

缺点是,你必须使用Cocoapods 0.39,这是非常遗留的,RestKit的黑客版本是0.25.0的分叉,所以它也不是最新的。

     

要使用fork,请在Podfile中替换   pod&#39; RestKit&#39;,... with   pod&#39; RestKit&#39;,:git =&gt; &#39; https://github.com/resmio/RestKit&#39;,:tag =&gt; &#39; v0.25.0使用的框架&#39;

     

此外,您可能需要使用黑客版本的AFNetworking,这也会产生一些问题。   同样在这里,替换   pod&#39; AFNetworking&#39;,...用   pod&#39; AFNetworking&#39;,:git =&gt; &#39; https://github.com/resmio/AFNetworking&#39;,:tag =&gt; &#39; V1.3.4使用的框架&#39;

     

如果你能告诉我这件事是否适合你,我会很高兴,如果这样,那就宣传吧! :)