在Linux上缺少Perfect框架中的库/模块

时间:2017-04-21 13:56:09

标签: linux swift module server perfect

我是一个学习如何在Linux上使用Swift进行编码的新手。 现在我正在尝试使用Perfect框架,因此我可以创建REST服务(或类似的东西)我正在按照此处的说明进行操作

https://videos.raywenderlich.com/courses/77-server-side-swift-with-perfect/lessons/1

视频(我在perfect.org网站上找到了一个链接),我在视频中做了一切,但是当我必须编辑main.swift文件并使用include来使用PerfectLib,PerfectHTTP和PerfectHTTPServer库/模块(?)。当我运行它时,终端上显示错误:

main.swift:1:8: error: no such module 'PerfectHTTP'
import PerfectHTTP

与其他模块相同。我是否必须将Perfect中的下载文件放到swift目录中的某个特殊目录中?或者下载链接中的文件可能不完整?

1 个答案:

答案 0 :(得分:1)

在做任何Server Side Swift之前,请暂时忘记Xcode并尝试一个名为Swift Package Manager的新工具链。在空白文件夹中打开终端并键入swift package init,然后它将设置一个空白项目,其中包含Package.swift,名为Sources的文件夹和Tests目录。< / p>

现在,您需要在将任何内容导入源代码之前编辑Package.swift。例如,启动程序模板Perfect服务器具有Package.swift

import PackageDescription

let package = Package(
    name: "PerfectTemplate",
    targets: [],
    dependencies: [
        .Package(url: "https://github.com/PerfectlySoft/Perfect-HTTPServer.git", majorVersion: 2)
    ]
 )

然后您可以导入Perfect-HTTPServer.git中包含的所有Perfect库

以下是PerfectTemplate的main.swift中定义的导入部分:

import PerfectLib
import PerfectHTTP
import PerfectHTTPServer

所以我建议最好的做法是尝试使用Perfect Assistant:https://assistant.perfect.org/perfectassistant/Perfect%20Assistant.dmg,它可以节省大多数棘手的操作,例如依赖关系管理,构建linux和生产服务器部署。

有关完美而非教学视频的详细信息,请参阅以下链接:http://www.perfect.org/docs/