Код, который вы указали, верен, поэтому, возможно, структура вашего проекта не такова.
Чтобы правильно создать проект, выполните следующие действия:
1. Создайтеновый каталог, например jamie
.
2. Из этого каталога запустите swift package init --type=executable
, чтобы создать новый проект.Проект будет называться jamie
после имени каталога.
3. Отредактируйте Sources/jamie/main.swift
и добавьте свой код.
4. Отредактируйте Package.swift
и добавьте к зависимостям пакета "Jamie" следующее:
.package(url: "https://github.com/IBM-Swift/Kitura.git", .upToNextMajor(from: "2.5.0")),
.
5. Отредактируйте Package.swift
и добавьте в качестве списка зависимостей для цели "jamie":
dependencies: ["Kitura"]),
Это должно работать правильно.Если это не так, это может быть связано с тем, что порт, который вы пытаетесь использовать, уже используется.Если вы добавите регистратор в свой проект, Kitura запишет сообщение об ошибке, если не сможет подключиться к порту.Для этого выполните следующие действия:
- Редактируйте
Package.swift
и добавьте следующее к зависимостям пакета "Jamie":
.package(url: "https://github.com/IBM-Swift/HeliumLogger.git", .upToNextMinor(from: "1.7.1")),
.
- Отредактируйте
Package.swift
и добавьте регистратор в список зависимостей для цели "jamie", чтобы она стала:
dependencies: ["Kitura", HeliumLogger"])
,
Отредактируйте Sources/jamie/main.swift
и добавьте в начало файла следующее:
import LoggerAPI
import HeliumLogger
HeliumLogger.use(LoggerMessageType.info)
Если порт уже используется, вы получите сообщение, подобное следующему:
[2019-02-17T12:01:40.723Z] [ERROR] [Kitura.swift:139 start()] Error listening on port 8080: Error code: -9992(0x-2708), Address already in use. Use server.failed(callback:) to handle
Если вы еще этого не сделали, то, вероятно, стоит присоединиться к слабой организации Kitura под именем http://slack.kitura.io