我使用过 Vapor 3,但这是我第一次使用版本 4。我正在使用 Ubuntu 20.04 和 Swift 5.6.1 设置一个新的服务器环境。我可以创建一个新的 Swift 项目,构建并运行它,没有任何问题。
接下来我将按照 Vapor 的 Install 和 Getting Started 文档进行操作。我能够很好地安装 Vapor Toolbox。然后为了测试我与文档一起工作并运行:
vapor new hello -n
cd hello
swift run
起初它似乎工作正常,获取依赖关系:
....
Creating working copy for https://github.com/vapor/async-kit.git
Working copy of https://github.com/vapor/async-kit.git resolved at 1.12.0
Creating working copy for https://github.com/apple/swift-nio-extras.git
Working copy of https://github.com/apple/swift-nio-extras.git resolved at 1.12.0
Building for debugging...
[1605/1613] Wrapping AST for Backtrace for debugging
此时它退出,没有错误消息或任何内容。
如果我再次跑步,也会出现类似的情况。最终它吐出一个错误:
error: emit-module command failed due to signal 9 (use -v to see invocation)
运行 verbose 会输出一大串不可读的路径和命令。
编辑:这是详细输出的粘贴,因为它太长而无法包含
听起来你的内存不足了。尝试启用交换或为机器提供更多 RAM,然后重试
启用交换文件为我解决了这个问题。我使用 Digital Ocean,这里有一个很好的 UBUNTU 交换文件教程:https://www.digitalocean.com/community/tutorials/how-to-add-swap-space-on-ubuntu-22-04#step-6 -调整您的交换设置