Xcode: "<unknown>:0: error: cannot load module 'main' as 'Swift'" upon trying to compile

Xcode: "<unknown>:0: error: cannot load module 'main' as 'Swift'" upon trying to compile

刚开始在 Xcode 上使用 Swift。

出于某种原因,每当我想编译时,它都会显示错误:<unknown>:0: error: cannot load module 'main' as 'Swift'

我能找到的唯一修复方法是清理构建文件夹或自己删除构建文件夹,然后编译。

我的代码刚刚更改自:

print("Hello, world!")

print("Hello, world")

我做错了什么吗?

Xcode 版本:12.1 (12A7403) 带有 Xcode 12.1 工具链

编辑:

我创建的项目是一个命令行工具,选择了 Swift 作为语言。所有其他设置都是默认设置(至少我是这样认为的)

此外,重新启动 Xcode 或创建新项目也无法解决问题。

理想情况下,您所做的根本不应该更改任何内容,因为您所做的只是更改字符串。我之前遇到过这种情况,更改一些任意代码会极大地改变程序的编译,但它通常会在重新启动我的 IDE 或重写代码后消失。

我要检查的第一件事是您的项目名称:如果您的项目名称是 'main,',编译器会将主模块与您的目标名称混淆(在这种情况下,您的目标名称与你的项目名称)

您可以采取一些措施来解决问题:

  1. 完全重启Xcode并重新打开项目。
  2. 删除文件并用相同的代码创建一个新文件。
  3. 将代码改回 print("Hello, World!") 并查看代码是否再次开始工作。
  4. 如果上述选项不起作用,请尝试删除派生数据文件夹(有时它会起作用,无缘无故地导致构建时错误)。
  5. 如果删除派生数据不起作用,请打开一个新项目并尝试再次将print("Hello, World!")更改为print("Hello, World"),看看是否有任何变化。您的初始项目中可能有损坏的文件。 (根据你的问题,你似乎已经这样做了,但无论如何都要删除派生数据后再试)。

原来问题可能是因为我的项目名为 Swift

不确定这背后的确切原因,但名称 Swift 可能导致了某些问题。