Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/24.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 如何在同一工作区中的另一个项目中包含Swift框架项目_Ios_Objective C_Swift_Ios Frameworks - Fatal编程技术网

Ios 如何在同一工作区中的另一个项目中包含Swift框架项目

Ios 如何在同一工作区中的另一个项目中包含Swift框架项目,ios,objective-c,swift,ios-frameworks,Ios,Objective C,Swift,Ios Frameworks,我有一个工作区设置,有一个项目层次结构,我们将它们称为“a”、“B”和“C” 项目'C'是一个C++项目,它编译成一个静态库,这里没有问题。 项目“B”是一个混合的Swift/Obj-C框架,它将项目“C”链接为一个依赖项。这是可行的,框架本身也可以很好地编译 现在的问题是: 项目“A”是一个iOS项目,在其构建阶段将“B”作为链接的二进制库。当我试图编译“A”时,我从项目“B”中的Obj-C桥接头中得到生成错误,无法找到这些头 似乎当我选择了“a”中的目标时,项目“B”中的框架正在使用项目“a

我有一个工作区设置,有一个项目层次结构,我们将它们称为“a”、“B”和“C”

项目'C'是一个C++项目,它编译成一个静态库,这里没有问题。 项目“B”是一个混合的Swift/Obj-C框架,它将项目“C”链接为一个依赖项。这是可行的,框架本身也可以很好地编译

现在的问题是: 项目“A”是一个iOS项目,在其构建阶段将“B”作为链接的二进制库。当我试图编译“A”时,我从项目“B”中的Obj-C桥接头中得到生成错误,无法找到这些头

似乎当我选择了“a”中的目标时,项目“B”中的框架正在使用项目“a”中的构建设置进行构建。好的。我尝试将'B'目录添加为
用户标题搜索路径
。当我执行此操作并尝试构建“A”时,我会收到有关类的重复定义的错误,这些类是作为“B”的一部分在“A”中编译的,这些类
导入B
,并且重复的定义源自“B”的Obj-C桥接头中包含的头

我将框架中的头配置为复制到框架的
Public
头。如果我将它们从
Public
移回
Project
,并在
User Header搜索路径中包含“B”的头
在“A”中,我就没有这个问题

我肯定在某个地方我缺少了一些配置,但我不知道它是什么


如何将项目构建作为与主应用程序相同的工作区中的框架,并将其作为独立的、自包含的(标题已处理等)依赖项包含在主iOS应用程序中?

在应用程序(项目a)目标下的
常规
选项卡中,项目B是否列在底部附近的
嵌入式二进制文件
部分?@digitalHound是的,以及所有其他依赖性框架和库中。不过,其他项目都不是这个工作区的一部分,只是关于Objc的项目BDunno,但是如果框架只是Swift,那么作为嵌入式二进制文件添加就足够了,只需要导入即可。objc如何使事情复杂化不知道。