【问题标题】:'Convert to latest Swift Syntax' breaks the build even when there are no changes即使没有更改,“转换为最新的 Swift 语法”也会中断构建
【发布时间】:2015-08-29 00:23:11
【问题描述】:

我的项目在objective-c 中,只有一个tableviewcontroller 在swift 中。我今天下载了 Xcode-beta,它提示我“转换为最新的 Swift 语法”。在我按照步骤操作后,它告诉我没有任何变化。我也没有在 proj 文件中看到任何更改,但它有错误。请注意,当我选择不转换为最新的 swift 语法时,我看不到错误 - 在这种情况下,应用程序构建和运行良好。

知道它为什么会坏吗?

这里是错误 -

  • 无法解析“应用名称”的调试映射没有这样的文件或目录
  • clang:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)
  • 其他错误是它无法找到 swift 文件。 swift类是在objective-c类中发起的。

【问题讨论】:

    标签: swift swift2 ios9 xcode7.1


    【解决方案1】:

    Product -> Clean 对我有帮助。

    【讨论】:

    • @sss,其他建议(来自 Pavlo)有帮助吗?
    【解决方案2】:

    project build settings 中将ENABLE_BITCODE 切换为NO 帮助了我。

    【讨论】:

    • @ViruMax 很高兴为您提供帮助 ;)
    • 这可能是应用商店应用的问题
    【解决方案3】:

    我遇到了类似的问题,我通过更改项目中的build phases/compile sources 解决了这个问题:

    我添加了需要在项目早期编译的新源,在我删除文件后,当我尝试构建项目时,它说它缺少我删除的文件。在删除了一些看起来好像不是默认构建阶段的构建阶段后,它运行良好。 我发现默认有 4 个编译源。

    此外,使用 Ctrl+Shift+K 将清理您的项目,这有助于我再次解决此类错误。

    【讨论】:

    • 你具体改变了什么?
    • 我添加了需要在项目早期编译的新源,在我删除文件后,当我尝试构建项目时,它说它缺少我删除的文件。在删除了一些看起来好像不是默认构建阶段的构建阶段后,它运行良好。我发现默认有 4 个编译源。此外,使用 Ctrl+Shift+K 将清理您的项目,这有助于我再次遇到这样的错误。
    • 很好!现在每个人都有更好的提示来解决这个案子。我用这条相关评论更新了你的答案。
    【解决方案4】:

    我遇到了同样的问题,以上答案都没有帮助。显然,我的问题是我使用 .m 文件而不是 .h 文件进行了导入。

    查找和修复这些问题的简单方法是 Find > Find in Project... 并搜索 #import.*m 并将它们更改为适当的 .h 文件

    【讨论】:

      猜你喜欢
      • 2011-11-06
      • 1970-01-01
      • 1970-01-01
      • 2016-12-10
      • 1970-01-01
      • 2013-02-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多