无法发出预编译 header 因为循环条件
Failed to emit precompiled header because Loop condition
假设我有 Swift 和 Objc 类,还有一个 MyProject-Bridging.h
BazSwiftClass.swift
public class BazSwiftClass: NSObject {
public let foo: String
@objc init(foo: String) {
self.foo = foo
}
}
FooClass.h
#import "MyProject-Swift.h"
@interface FooClass : NSObject {
- (BazSwiftClass)bazMethod;
}
我想访问另一个 Swift Class 中的 FooClass.h
(假设栏SwiftClass)
public class BarSwiftClass {
public hello() -> BazSwiftClass {
return FooClass().bazMethod()
}
}
我的 swift 文件中需要 FooClass.h,所以我在 MyProject-Bridging.h
中添加了 FooClass
#import "FooClass.h"
所以 Flow 就像 BarSwiftClass -> FooClass -> BazSwiftClass
它无法工作,因为编译器显示 "failed to emit precompiled header" 我认为这是因为 MyProejct-Bridging.h
中的 #import "FooClass.h"
请帮忙。
谢谢。
替换您的代码
#import "MyProject-Swift.h"
@interface FooClass : NSObject {
- (BazSwiftClass)bazMethod;
}
有
@class BazSwiftClass
@interface FooClass : NSObject {
- (BazSwiftClass)bazMethod;
}
并且在 FooClass.m 文件中您可以导入 #import "MyProject-Swift.h"
假设我有 Swift 和 Objc 类,还有一个 MyProject-Bridging.h
BazSwiftClass.swift
public class BazSwiftClass: NSObject {
public let foo: String
@objc init(foo: String) {
self.foo = foo
}
}
FooClass.h
#import "MyProject-Swift.h"
@interface FooClass : NSObject {
- (BazSwiftClass)bazMethod;
}
我想访问另一个 Swift Class 中的 FooClass.h
(假设栏SwiftClass)
public class BarSwiftClass {
public hello() -> BazSwiftClass {
return FooClass().bazMethod()
}
}
我的 swift 文件中需要 FooClass.h,所以我在 MyProject-Bridging.h
中添加了 FooClass#import "FooClass.h"
所以 Flow 就像 BarSwiftClass -> FooClass -> BazSwiftClass
它无法工作,因为编译器显示 "failed to emit precompiled header" 我认为这是因为 MyProejct-Bridging.h
中的#import "FooClass.h"
请帮忙。
谢谢。
替换您的代码
#import "MyProject-Swift.h"
@interface FooClass : NSObject {
- (BazSwiftClass)bazMethod;
}
有
@class BazSwiftClass
@interface FooClass : NSObject {
- (BazSwiftClass)bazMethod;
}
并且在 FooClass.m 文件中您可以导入 #import "MyProject-Swift.h"