为什么在尝试从 Swift 文件导入静态库时会出现“重复的接口定义”?[关闭]

Why do I get 'Duplicate interface definition' when trying to import a static library from Swift file? [closed]

提问人:Joshua 提问时间:11/17/2023 最后编辑:Joshua 更新时间:11/20/2023 访问量:33

问:


编辑问题以包括所需的行为、特定问题或错误以及重现问题所需的最短代码。这将帮助其他人回答这个问题。

2天前关闭。

我有一个具有以下配置的 iOS 应用程序:

  • 我自己的 ObjC 静态库项目 - MyStaticLib
  • 我自己的 ObjC 应用目标项目 - MyApp
  • 我在同一个 Xcode 工作区中有两个项目,以便 MyStaticLib 成功链接到 MyApp
  • 这两个项目都成功地混合了 ObjC 和 Swift 代码。

现在:

  • MyStaticLib:ObjC 代码可以访问 Swift 代码,反之亦然
  • MyApp:ObjC 代码可以访问 Swift 代码,反之亦然
  • 来自 MyApp 的 ObjC 代码可以访问 MyStaticLib 中的 ObjC 代码(这是通过使用 ObjC 头文件在 MyStaticLib 项目设置的生成阶段添加复制文件来实现的)

目的:

  • 从 MyApp 调用位于 MyStaticLib 中的 Swift 函数。

问题:

  • 当我添加时,我得到几十个import MyStaticLibDuplicate interface definition for class 'MyClass'
  • 旁边有一个警告import MyStaticLibImplicit import of bridging header 'MyStaticLib-Bridging-Header.h' via module 'MyStaticLib' is deprecated and will be removed in a later version of Swift

有什么想法吗?

iOS Swift Objective-C Xcode 静态库

评论


答: 暂无答案