我做了一个捆绑目标,它的Info.plist
文件指定一个非常具体的类(我们称之为PrincipalClass
) 应该是它的主要类。这个类是用 Swift 编写的,并且具有@objc
属性。这Info.plist
文件已正确复制到捆绑包中,并且我已经多次清理并重建了该项目。
然而,当我从 Swift 框架加载包时,它的主要类是一个不同的类(我们称之为NotPrincipalClass
)。没有标记@objc
,事实上,它应该在包的内部。我检查了bundle.bundleURL
在调试器中,以及Info.plist
捆绑包中的文件确实表明它应该是PrincipalClass
;但当我检查时bundle.infoDictionary
, the NSPrincipalClass
属性读取NotPrincipalClass
作为一个字符串! (信息字典还包含几个未由Info.plist
文件,例如DTCompiler
等等。)
如果我完全删除NotPrincipalClass
,我得到了另一个内部类,但它仍然完全不是我的主要类。
我彻底检查了构建日志,但没有看到任何提及NotPrincipalClass
,除非编译时。
什么可能导致这种情况?我能做什么来解决它?
不知何故,使用其限定名称(“PlugInNamespace.PrincipalClass”)解决了问题,但这让我非常怀疑,因为我有另一个不需要这个的插件。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)