Мой контекст:
- macOS Catalina версия 10.15.3
- Xcode 11,4
- Swift 5.2
- Vapor4
Я создаю новый проект Vapor с vapor-beta new myProjectName
Он спрашивает, хочу ли я использовать Fluent, на что я согласен (y), и спрашивает, какую базу данных я хочу (1. * postgreSQL 2. MySql 3. SQLite). Я пошел с вариантом 3; SQLite - это то, что мне нужно.
Затем он загружает шаблон и предположительно настраивает его с моими выбранными выше параметрами. Останавливается / останавливается на
Generating project files
+ Package.Swift
После этой строки ничего не происходит, даже после 10 минут ожидания.
Когда я просматриваю папку своего приложения, появляется скрытая папка .vapor-template, которая кажется, содержит структуру папок приложения. Я не могу просто начать использовать его, потому что многие файлы кажутся ... незаконченными, в некотором роде. Например, вот как выглядит Package.swift:
let package = Package(
name: "{{name}}",
platforms: [
.macOS(.v10_15)
],
dependencies: [
// ? A server-side Swift web framework.
.package(url: "https://github.com/vapor/vapor.git", from: "4.0.0-rc"){{#fluent}},
.package(url: "https://github.com/vapor/fluent.git", from: "4.0.0-rc"),
.package(url: "https://github.com/vapor/fluent-{{fluent.db.url}}-driver.git", from: "{{fluent.db.version}}-rc"){{/fluent}}
],
targets: [
.target(name: "App", dependencies: [{{#fluent}}
.product(name: "Fluent", package: "fluent"),
.product(name: "Fluent{{fluent.db.module}}Driver", package: "fluent-{{fluent.db.url}}-driver"),{{/fluent}}
.product(name: "Vapor", package: "vapor")
]),
.target(name: "Run", dependencies: ["App"]),
.testTarget(name: "AppTests", dependencies: [
.target(name: "App"),
.product(name: "XCTVapor", package: "vapor"),
])
]
)
Как видите, название проекта не задано (я имею в виду вещь name: "{{name}}"
), и их много странных ссылок на {{#fluent}}
или "{{fluent.db.version}}-rc")
, которые сводят с ума компилятор. Похоже, что команде «steam new» нужно было еще немного поработать над настройкой, чтобы у нее просто не было возможности завершить работу sh. Та же история повторяется в configure.swift и rout.swift.
Я просмотрел все из них, удалив странные заполнители только для того, чтобы столкнуться с некоторой ситуацией configure.swift, в которой он жалуется на то, что .sqlite не распознается или что-то в этом роде. , Я посмотрел его в google / stackoverflow, попробовал некоторые исправления, которые не работали ... пока я не сделал шаг назад, осознал, что, черт возьми ... Я не должен был делать все это, ШерлокХолмс-ин ... " Команда "Новый пара" должна просто работать и успешно завершаться sh ... Впоследствии у меня много работы ... Этот простой шаг helloWorld-i sh должен просто работать ...
Если кто-нибудь У меня есть некоторые идеи для успешного создания проекта Vapor4, я буду благодарен ... (простое выполнение шагов в https://docs.vapor.codes/4.0/hello-world/ не способствует работающему проекту)
LE: спасибо по предложению imike, я отправился в сообщество Vapor на Discord и нашел свое решение. Путь к папке моего проекта содержит несколько пробелов и тире. Удаление тех позволило процессу завершиться правильно sh. Отличное, полезное сообщество!