框架包格式不明确

Framework Bundle Format is ambiguous

我正在使用 Xcode 在 10.9.5 上创建 Mac OSx 应用程序 6. 我使用 Developer ID Application 生成“.app”。我无法 运行 在具有相同配置的其他 Mac 上使用此“.app”。 我面临的错误是

WSBluetoothFramework.framework/: bundle format is ambiguous (could be app or framework)

创建“.app”之前的框架结构

创建“.app”后的框架结构

我已经花了 8 个小时仍然没有找到任何解决方案,任何人都可以知道这个错误吗?

当您通过邮件下载“.app”文件时,它改变了它的结构。所以为了解决这个问题,我从“.app”创建了安装程序,然后通过邮件发送。

它改变结构只是一个模糊的暗示。 最有可能的是,符号链接被破坏了。 (即替换为副本)

在另一种情况下,使用 Sparkle-1.18.1 我必须确保 sparkle 框架源中的所有符号链接保持不变。如果不是,codesign 会给出这个误导性的错误消息。

我也遇到了这个问题。符号链接的原因。 你可以阅读:https://developer.apple.com/library/archive/technotes/tn2206/_index.html.

通过添加符号链接(删除文件并使用 ln -s),我更改了 xxx.framework 的结构,如下所示。 注意:使用相对路径创建符号链接!

---------------------------------------------------
xxx.framework
    xxx  ->  Versions/Current/xxx
    Resources  ->  Versions/Current/Resources
    Headers  ->  Versions/Current/Headers
    Versions
----------------------------------------------------
xxx.framework/Versions
    A
    Current  ->  A