【问题标题】:"Use of unresolved identifier" error only appear when Build Archive“使用未解析的标识符”错误仅在构建存档时出现
【发布时间】:2016-01-17 05:59:02
【问题描述】:

我正在尝试从我的 Swift 项目中存档 IPA,并且我有一个引用到主项目的“框架项目”。正常构建和运行时工作正常。但是当我尝试“存档”时,它遇到了错误“使用未解析的标识符...”对于我在框架项目中定义的所有类。

【问题讨论】:

  • 重启你的Xcode再试一次。
  • @DharmeshKheni 在我在这里发布问题之前,我多次重新启动 Xcode。问题依然存在!
  • 这些定义是什么?另外,尝试进行干净的构建 (Shift + Command + K)
  • @Jojodmo SEUser 和 SessionDTORequest 在 Swift_Backend_Lib 框架项目中定义。如您所见,它们仍然具有绿色。每次我想要构建存档之前,我都会清理构建文件夹(Shift + Option + Command + K)
  • 当您为框架无法构建的目标构建时会发生这种情况。可以是架构或操作系统版本。例如:框架9.2以上,项目8.0以上。

标签: ios xcode swift


【解决方案1】:

我今天遇到了这个问题,我想我会把这个考虑发布给那些摸不着头脑的人。它可能有帮助,也可能没有帮助......

如果您的代码引用了包含在调试宏中的内容,它将在 Xcode 中编译并正常显示,直到您尝试归档为止。然后它会很有帮助,只是找不到参考。

我遇到了编译消息:

use of unresolved identifier 'sampleStore'

有问题的代码如下所示:

struct FriendsListView_Previews: PreviewProvider {
    static var previews: some View {
        FriendsListView(id: 0).environmentObject(sampleStore)
    }
}

这段代码看起来与其他几个使用相同 sampleStore 的地方完全一样。这让我偏离了轨道。

花了一些时间才意识到sampleStore的定义被包裹在

#if DEBUG
let sampleStore = Store()
// etc
#endif

所以解决方案是把 swiftui 预览代码也封装在调试宏中

#if DEBUG
struct FriendsListView_Previews: PreviewProvider {
    static var previews: some View {
        FriendsListView(id: 0).environmentObject(sampleStore)
    }
}
#endif

【讨论】:

    猜你喜欢
    • 2020-01-23
    • 1970-01-01
    • 1970-01-01
    • 2018-11-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多