Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios Xcode Swift pods安装-未找到导入文件_Ios_Xcode_Cocoapods - Fatal编程技术网

Ios Xcode Swift pods安装-未找到导入文件

Ios Xcode Swift pods安装-未找到导入文件,ios,xcode,cocoapods,Ios,Xcode,Cocoapods,我正在从事一个用Swift编写的Xcode项目。我正在使用两个pod,AFNetworking和BDBOAuth1Manager。它们都是Obj-C库,因此导入它们的简单桥接文件可以解决所有问题 现在,当我尝试包含第三个pod时,问题出现了,SwiftyJSON,它是用Swift编写的。以下是播客文件的外观: platform :ios, "8.0" use_frameworks! pod "AFNetworking" pod "BDBOAuth1Manager" pod "SwiftyJSO

我正在从事一个用Swift编写的Xcode项目。我正在使用两个pod,
AFNetworking
BDBOAuth1Manager
。它们都是Obj-C库,因此导入它们的简单桥接文件可以解决所有问题

现在,当我尝试包含第三个pod时,问题出现了,
SwiftyJSON
,它是用Swift编写的。以下是播客文件的外观:

platform :ios, "8.0"
use_frameworks!

pod "AFNetworking"
pod "BDBOAuth1Manager"
pod "SwiftyJSON"

link_with 'TwitterSearch', 'TwitterSearch Tests'
安装上述Podfile后,桥接头停止工作,因为它现在找不到我试图导入的文件

对于clarifty,这是桥接头文件:

//
//  Use this file to import your target's public headers that you would like to expose to Swift.
//

#import "BDBOAuth1RequestOperationManager.h"
当pod是用Obj-C编写的
AFNetworking
BDBOAuth1Manager
时,它就工作了。当包含用Swift编写的第三个pod
SwiftyJSON
时,它就不工作了

确切的错误消息如下:

  • Swift编译器错误:“BDBOAuth1RequestOperationManager.h”文件不正确 发现
  • Swift编译器错误:无法导入桥接头
    桥接头的路径
知道这是什么吗

更新:我已经弄明白了为什么它不起作用。当我手动添加SwiftyJSON时,一切正常。整个问题可以追溯到这一行:
use\u frameworks
我对框架一点也不熟悉,但实际上,您必须执行以下操作:

#import "path/BDBOAuth1RequestOperationManager.h"

instead of

#import "BDBOAuth1RequestOperationManager.h"

尝试向pod文件添加版本,如下所示

pod 'SwiftyJSON', '~> 2.2.1'

尝试向pod文件添加版本,如下所示

pod 'SwiftyJSON', '~> 2.2.1'
变通办法 Podfile

platform :ios, "8.0"
use_frameworks!

target 'SwiftAndObjCPods' do
pod "SwiftyJSON"
end

target 'SwiftAndObjCPodsTests' do
pod "SwiftyJSON"
end
项目:

将当前版本的
AFNetworking
BDBOAuth1Manager
直接拖放到项目中。您可以通过在Podsgroup>Pods>Show in Finder中定位这些内容,然后简单地将它们移动到方便的临时位置

桥接头.h

#import "AFNetworking.h"
#import "BDBOAuth1RequestOperationManager.h"
快速使用

// No import
let a = BDBOAuth1RequestOperationManager(baseURL: baseURL, consumerKey: "consumer", consumerSecret: "secret")
platform :ios, "8.0"
use_frameworks!

target 'ObjCSwiftPods' do
pod "AFNetworking"
pod "BDBOAuth1Manager"
pod "SwiftyJSON"
end

target 'ObjCSwiftPodsTests' do
pod "AFNetworking"
pod "BDBOAuth1Manager"
pod "SwiftyJSON"
end
测试:链接、构建、运行。

解决方案 Podfile

platform :ios, "8.0"
use_frameworks!

target 'SwiftAndObjCPods' do
pod "SwiftyJSON"
end

target 'SwiftAndObjCPodsTests' do
pod "SwiftyJSON"
end
项目:

将当前版本的
AFNetworking
BDBOAuth1Manager
直接拖放到项目中。您可以通过在Podsgroup>Pods>Show in Finder中定位这些内容,然后简单地将它们移动到方便的临时位置

桥接头.h

#import "AFNetworking.h"
#import "BDBOAuth1RequestOperationManager.h"
快速使用

// No import
let a = BDBOAuth1RequestOperationManager(baseURL: baseURL, consumerKey: "consumer", consumerSecret: "secret")
platform :ios, "8.0"
use_frameworks!

target 'ObjCSwiftPods' do
pod "AFNetworking"
pod "BDBOAuth1Manager"
pod "SwiftyJSON"
end

target 'ObjCSwiftPodsTests' do
pod "AFNetworking"
pod "BDBOAuth1Manager"
pod "SwiftyJSON"
end
已测试:链接、生成、运行。

无解决方法 Podfile

// No import
let a = BDBOAuth1RequestOperationManager(baseURL: baseURL, consumerKey: "consumer", consumerSecret: "secret")
platform :ios, "8.0"
use_frameworks!

target 'ObjCSwiftPods' do
pod "AFNetworking"
pod "BDBOAuth1Manager"
pod "SwiftyJSON"
end

target 'ObjCSwiftPodsTests' do
pod "AFNetworking"
pod "BDBOAuth1Manager"
pod "SwiftyJSON"
end
-桥接标头

#import "../Pods/AFNetworking/AFNetworking/AFNetworking.h"
#import "../Pods/BDBOAuth1Manager/BDBOAuth1Manager/BDBOAuth1RequestOperationManager.h"
关于桥接标头的注意事项:

{Pods的完整路径}/
替换
。/
,让我在Xcode发生故障时莫名其妙地达到了目的

快速调用

// necessary import
import SwiftyJSON

// test BDBOAuth1Manager
let url = NSURL(string: "http://ObjCSwiftPods.com")
let bdsm = BDBOAuth1RequestOperationManager(baseURL: url, consumerKey:"key", consumerSecret:"secret")

// test AFNetworking
let sec = AFSecurityPolicy()

// test SwiftyJSON
let json = JSON("{}")

无解决方法 Podfile

// No import
let a = BDBOAuth1RequestOperationManager(baseURL: baseURL, consumerKey: "consumer", consumerSecret: "secret")
platform :ios, "8.0"
use_frameworks!

target 'ObjCSwiftPods' do
pod "AFNetworking"
pod "BDBOAuth1Manager"
pod "SwiftyJSON"
end

target 'ObjCSwiftPodsTests' do
pod "AFNetworking"
pod "BDBOAuth1Manager"
pod "SwiftyJSON"
end
-桥接标头

#import "../Pods/AFNetworking/AFNetworking/AFNetworking.h"
#import "../Pods/BDBOAuth1Manager/BDBOAuth1Manager/BDBOAuth1RequestOperationManager.h"
关于桥接标头的注意事项:

{Pods的完整路径}/
替换
。/
,让我在Xcode发生故障时莫名其妙地达到了目的

快速调用

// necessary import
import SwiftyJSON

// test BDBOAuth1Manager
let url = NSURL(string: "http://ObjCSwiftPods.com")
let bdsm = BDBOAuth1RequestOperationManager(baseURL: url, consumerKey:"key", consumerSecret:"secret")

// test AFNetworking
let sec = AFSecurityPolicy()

// test SwiftyJSON
let json = JSON("{}")


您的cocoapods版本和部署目标是什么?cocoapods版本是0.38.2。不确定您所说的部署目标是什么。部署目标是您的应用程序目标的最低iOS版本。哦。这将是8.0。那么,它似乎是与可可豆有关的东西,因为满足了SwiftyJSON的最低条件。热修复程序是将.swift文件手动添加到项目中。您的cocoapods版本和部署目标是什么?cocoapods版本是0.38.2。不确定您所说的部署目标是什么。部署目标是您的应用程序目标的最低iOS版本。哦。这将是8.0。那么,它似乎是与可可豆有关的东西,因为满足了SwiftyJSON的最低条件。热修复方法是将.swift文件手动添加到项目中。Path是导入文件的路径,与导入文件相对应,如果这样做有意义的话。很抱歉,我是StackOverflow的新手。Path是导入文件的路径,与导入文件相对应,如果有意义的话。对不起,我是新来的。