问题
你的项目在 Xcode 里打开的时候,可能会出现下面这种错误提醒'main' attribute cannot be used in a module that contains top-level code
:
这个问题是因为 Swift 官方说默认是main.swift
或@main
是入口,二者不能同时使用。
但是如果你在命令行里使用
swift build -c release
构建,你会发现这里可以正确编译。
如果你在 Xcode 里删除了@main
,那么构建出来会发现啥也没有:
你把main.swift
文件名改了,会发现可以正常构建了:
总结
如果你要使用 Xcode 开发 Swift 项目的时候,主函数文件的名称尽量使用项目名称,不要用main
。
希望能帮到有需要的人~
参考资料
Getting Started with ArgumentParser:苹果官方文档里面说明main.swift
或@main
是入口,二者不能同时使用的地方,截图如下。