KituraでサーバサイドSwift
IBMのサーバサイドフレームワークKituraを使ってSwift製のWebアプリケーションを作ってみます
環境
Mac OSX El Capitan 10.11.4 Swift 2.2 XCode 7.3
Swiftのインストール
自分の環境のインストーラをダウンロードしてインストールします。 Swift.org - Download Swift
※$ swift build
を実行して「swift-build
が見つからないよ」というようなエラーが出た場合はSnapshotsの"Trunk Development"をインストールして下さい。
XCodeのToolchainを変更(XCode7.3の場合)
- XCodeを開き
Preferences
>Components
>Toolchains
でXcode Swift 2.2 Snapshot XXXX
を選択 - パスを通す
$ export PATH=/Library/Developer/Toolchains/swift-latest.xctoolchain/usr/bin:"${PATH}"
Kituraアプリケーションの作成
適当なところに新しいディレクトリを作成
$ mkdir myFirstProject
Swift projectのinitialize
$ cd myFirstProject $ swift build --init
- 以下のようなディレクトリ構成になっているかと思います
myFirstProject ├── Package.swift ├── Sources │ └── main.swift └── Tests └── empty
Package.swiftにKaturaの依存関係を追加
Package.swiftを以下のように編集します
import PackageDescription let package = Package( name: "myFirstProject", dependencies: [ .Package(url: "https://github.com/IBM-Swift/Kitura.git", majorVersion: 0, minor: 7) ])
main.swiftを編集
Sources/main.swiftを以下のように編集します
import Kitura import KituraNet import KituraSys let router = Router() router.get("/") { request, response, next in response.send("Hello, World!") next() } let server = HttpServer.listen(8090, delegate: router) Server.run()
Compile
Mac OSの場合は以下のコマンドを実行
$ swift build -Xcc -fblocks -Xswiftc -I/usr/local/include -Xlinker -L/usr/local/lib
サーバ起動
$ .build/debug/myFirstProject
ブラウザからhttp://localhost:8090/にアクセスするとWebページが表示されます
次回(あるかわからないけど)はBluemixにKituraアプリをデプロイしてみようかと思っています。