Swift-如何确保即使类看起来未使用,也能编译它?
我的设置如下:我有一个带有自定义类Swift-如何确保即使类看起来未使用,也能编译它?,swift,xcode,loading,compiler-optimization,xpc,Swift,Xcode,Loading,Compiler Optimization,Xpc,我的设置如下:我有一个带有自定义类Foo的app targetapp,用于协议的参数中,该协议用于通过XPC进行通信。App的AppDelegate实现此协议,例如: @objc(Foo) class Foo { ... } protocol XPCProtocol { func myFunc(foo: Foo) } class AppDelegate: NSApplicationDelegate, XPCProtocol { ... func myFunc(foo: Fo
Foo
的app targetapp
,用于协议的参数中,该协议用于通过XPC进行通信。App
的AppDelegate实现此协议,例如:
@objc(Foo) class Foo { ... }
protocol XPCProtocol {
func myFunc(foo: Foo)
}
class AppDelegate: NSApplicationDelegate, XPCProtocol {
...
func myFunc(foo: Foo) { ... }
}
在我的用例中,myFunc
从不从我的应用目标app
调用,而是通过XPC由另一个进程调用。然而,似乎因为App
从不调用它,而且这是Foo
的唯一用法,所以Foo
类似乎没有被编译(每当我从另一个进程调用myFunc
时,它都会说Foo
没有加载或不存在)
进一步表明这是一个编译问题的事实是,如果我只是在App
中的任何地方通过let\uz=Foo()
实例化Foo
,问题就会消失。然而,我更愿意避免用这种方式解决编译器问题
那么,有没有办法标记我的Foo
类,以便编译器始终包含它?我已经在我的Xcode构建设置中关闭了Swift编译器优化,所以我不确定还能做什么