当前位置: 首页 > 面试题库 >

目标C到具有多个目标的Swift头文件

苏昂雄
2023-03-14
问题内容

我已经通过import语句从Objective C(针对目标“ MyApp”)成功调用了我的Swift类:

#import "MyApp-Swift.h"

我现在创建了一个名为“ MyAppLite”的新目标

编译新目标时,出现错误,因为代码需要“ MyApp-Swift.h”,但是编译器正在创建“ MyAppLite-Swift.h”

因此,我需要为#import要编译的目标创建条件Swift / ObjC标头。

怎么做,还是有更好的办法?


问题答案:

还可以将模块中的Product Module Name设置设置Build Settings为相同(我将其设置为$(PROJECT_NAME)),以便<project>-Swift.h生成的文件在所有模块中具有相同的名称。这消除了添加/检查预处理器宏的需要。



 类似资料:
  • 问题内容: 希望这是一个非常简单的问题。我有一个makefile模式规则,如下所示: 我希望makefile生成许多.so文件,因此我尝试通过执行以下操作来使其生成两个文件(radgrd_py.so和lodiso_py.so): 然后尝试这个: 但是在每种情况下,它只会构建我指定的第一个目标。如果我运行’make radgrd_py.so’可以正常工作,我只是不确定如何指定需要构建的文件列表,这样

  • Xcode 6和新的Swift语言的最低部署目标是什么?具体来说,我还能支持iOS 5.0吗?

  • 但是,不能将Swift自动生成的桥接头导入到Obj-C.h文件中。您也不能用转发声明不透明的超类。那么,这可能吗,怎么可能?

  • 问题内容: 我有一个目前正在转换为Maven的Ant构建。但是,Ant构建有2个构建目标-一个构建整个应用程序,一个从这些文件中的一些(仅少数)构建JAR。在Ant中,很容易有多个构建目标来处理此问题,但是我正在尝试确定在Maven中处理此问题的最佳方法。 我可以将文件的子集拆分到另一个项目中,它将拥有自己的POM。然后,第一个项目可能依赖于此项目。但是,由于文件的子集非常小(少于10个),因此为

  • 1. 多目标文件的链接 现在我们把例 12.1 “用堆栈实现倒序打印”拆成两个程序文件,stack.c实现堆栈,而main.c使用堆栈: /* stack.c */ char stack[512]; int top = -1; void push(char c) { stack[++top] = c; } char pop(void) { return stack[top--]; } i

  • 从这个问答中,我尝试了不同的解决方案,但没有一个奏效。 这里是顶层建筑。Gradle: 我试图在子项目中提高源代码的兼容性,但似乎没有效果。 子项目包含使用来自Java8的API的每个类,使用Java6的子项目预计会失败,但构建成功运行。 下面是父build.gradle文件: 父设置的内容。Gradle: 它是gradle.properties: 我正在打印和,它们对每个项目都有很好的值。 我正