尽管安装了 CocoaPod,导入 SDWebImage 还是失败

import SDWebImage fails despite CocoaPod installation

我已将 SDWebImage 插入 Podfile

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'

pod 'NSData+Base64', '~> 1.0'
pod 'Facebook-iOS-SDK', '~> 3.23'
pod 'CrashlyticsFramework', '~> 2.2'
pod 'AFNetworking', '~> 2.5'
pod 'NewRelicAgent', '~> 4.186'
pod 'GoogleAnalytics-iOS-SDK', '~> 3.10'
pod 'Reachability', '~> 3.2'
pod 'SDWebImage', '~> 3.7'

其次是:

pod install
pod update

全部安装成功

但是当我打开工作区并尝试访问库时,我在导入时得到了这个 #import <SDWebImage/UIImageView+WebCache.h>

TNCViewController.m:12:9: 'SDWebImage/UIImageView+WebCache.h' file not found

在Pods项目下我可以看到Pods/SDWebImage

并且我已经手动添加 ImageIO.framework 到链接框架和库。

我还能做什么?以前从未遇到过 cocoapod 库的此类问题。

更新 我找到问题了!!

如果我删除单元测试的 Target Membership,那么它会编译!! 这也发生在我将文件复制过来的新项目中。

这意味着 Pod 安装不会为测试目标安装文件。知道我能做什么吗?

我终于找到了解决办法!!

我先安装了 Cocoa Pods deintegrate: https://github.com/kylef/cocoapods-deintegrate

pod deintegrate
rm Podfile.lock
rm Podfile
pod init
vim Podfile

-> 我的 Pod 文件现在看起来像这样:

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'

target 'News' do

pod 'NSData+Base64', '~> 1.0'
pod 'Facebook-iOS-SDK', '~> 3.23'
pod 'CrashlyticsFramework', '~> 2.2'
pod 'AFNetworking', '~> 2.5'
pod 'NewRelicAgent', '~> 4.186'
pod 'GoogleAnalytics-iOS-SDK', '~> 3.10'
pod 'Reachability', '~> 3.2'
pod 'SDWebImage', '~> 3.7'

end

target 'NewsTests' do

pod 'SDWebImage', '~> 3.7'

end

现在可以了。原因是如果你标记你的ViewController成为Test Target的一部分,你还需要Test Target中的库

我应该把运行 pod init排在第一位。它并不像文档声称的那样可选。

希望这对其他人有帮助,让他们免于沮丧