gpt4 book ai didi

ios - 顶层扩展的非模块化 header 错误

转载 作者:行者123 更新时间:2023-11-30 14:02:59 25 4
gpt4 key购买 nike

我正在尝试为我们的 tvOS 应用程序编写一个 Top Shelf 扩展。我们有一个私有(private)框架来处理所有低级数据代码。

我们使用的是 Xcode 7.1 Beta 2。

关于框架的一些注释...

  • 它仅使用扩展安全 API。

  • 它适用于 iOS 和 tvOS。

  • 它主要是用 Swift 编写的,但也有一些私有(private)的 C++ 和 Objective-C++ 对象。一些 Objective-C++ 对象可以通过内部私有(private)模块在 Swift 中访问(当然,它们的头文件中没有 C++)。在这些对象的头文件中完成的唯一导入是诸如 Foundation 和 CoreGraphics 之类的系统库。它们是使用旧的 #import <Foundation/Foundation.h> 导入的样式,因为你不能使用 @import Foundation;在 Objective-C++ 对象中。

  • 在我们的 .modulemap 中,我们导入 sqlite 并在一些 Swift 文件中使用它。

这是模块映射文件。

framework module MyFramework {  
umbrella header "MyFramework.h"
header "/Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/include/sqlite3.h"

module Private {
umbrella header "MyFramework_Private.h"
export *
}

export *
module * { export * }
}

这里是“MyFramework_Private.h”

#import <UIKit/UIGestureRecognizerSubclass.h>  
#import <MyFramework/MyClass.h>
#import <MyFramework/MyOtherClass.h>
#import <MyFramework/AndSoOn.h>

问题是我无法使用顶级扩展中的 MyFramework。我在“MyFramework_Private.h”中导入的三个文件出现编译错误(UIKit/UIGestureRecognizerSubclass.h 工作正常)。

我遇到的错误是

Include of non-modular header inside framework module 'MyFramework.Private'  

此错误在编译 Top Shelf 扩展的目标时发生。 MyFramework 可以很好地编译(并运行)iOS 应用程序、iOS Today 扩展和 tvOS 应用程序。

我应该对此进行雷达报告还是有一些明显的我遗漏的东西?

最佳答案

看起来这是一个 Xcode 错误。归档为 rdar://22855945。

关于ios - 顶层扩展的非模块化 header 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32769783/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com