image.png
[ Perfect](https://www.perfect.org/)は、Linux、iOS、およびMacOS(OS X)用の完全で強力なツールボックス、フレームワーク、およびアプリケーションサーバーです。これは、Swiftエンジニアが、クライアント側およびサーバー側アプリケーション用のSwiftプログラミング言語用の軽量で保守可能で拡張可能なアプリケーションおよびその他のRESTサービスを開発するために必要なすべてを提供します。
次のいくつかの記事では、Perfectフレームワークを記録します。興味のある人は見ることができます:
[ Swift Perfect-Ubuntuサーバーの展開](https://www.jianshu.com/p/be9f09e09d8f)[SwiftPerfect-Qiniuアップロードファイル](https://www.jianshu.com/p/4e0a0eb77ea3)[SwiftPerfect-APN認証コードを取得するためのiOSメッセージプッシュ(APN)] (https://www.jianshu.com/p/3058d80761e8)[Swift Perfect-systemdコマンドサーバープロジェクトを使用してバックグラウンドで実行](https://www.jianshu.com/p/d5e7fc5be2fb)[Ubuntu環境でのNginxのインストールと展開](https://www.jianshu.com/p/9abab01f0ea8)[SwiftPerfect-Nginx configure HTTPSサーバー](https://www.jianshu.com/p/b6a3fb212adf)
以下は私がPerfectを使って書いたものです(あなたを助けることができるものがあれば、私はそれが好きになることを願っています、そしてところで、私はGitHubでそれが好きです)
Github:https://github.com/LeeCenY/iRent
開発環境 | バージョン |
---|---|
Swift | 3.0.2 |
Perfect | 2.0 |
Ubuntu | 16.04 |
[https://github.com/PerfectlySoft/Perfect-Ubuntu](https://github.com/PerfectlySoft/Perfect-Ubuntu)を使用して、SwiftとPerfectをデプロイします
apt-get update
sudo apt-get install clang libicu-dev
image.png
PGPキーのインポート(2つの方法)
方法1:
gpg --keyserver hkp://pool.sks-keyservers.net \
- - recv-keys \
'7463 A81A 4B2E EA1B 551F FBCF D441 C977 412B 37AD' \
'1 BE1 E29A 084C B305 F397 D62A 9F59 7F4D 21A5 6D5F' \
' A3BA FD35 56A5 9079 C068 94BD 63BC 1CFE 91D3 06C6'
wget -q -O - https://swift.org/keys/all-keys.asc | \
gpg --import-
tar xzf swift-3.0.2-RELEASE-ubuntu16.04.tar.gz
mv swift-3.0.2-RELEASE-ubuntu16.04 swift
echo "export PATH=/root/swift/usr/bin:"${PATH}"" >> ~/.bashrc
source ~/.bashrc
swift --version
コマンドを実行して、Swift環境が正常に設定されているかどうかを確認しますSwift version 3.0.2 (swift-3.0.2-RELEASE)
Target: x86_64-unknown-linux-gnu
sudo apt-get install git
sudo apt-get install openssl libssl-dev uuid-dev
git clone https://github.com/PerfectlySoft/PerfectTemplate.git
cd PerfectTemplate
swift build
. build/debug/PerfectTemplate
[ INFO] Starting HTTP server localhost on 0.0.0.0:8181
ln -s /usr/include/libmongoc-1.0/ libmongoc-1.0
または
ln -s /usr/include/libmongoc-1.0/usr/local/include/libmongoc-1.0
swift build
の場合、一部の依存関係がクローンの最新バージョンではない可能性があります。これは、次の2つの依存関係の場合です。. Package(url:"https://github.com/SwiftORM/MongoDB-Storm.git", majorVersion:1),.Package(url:"https://github.com/PerfectlySoft/Perfect-RequestLogger.git", majorVersion:1),
依存関係の更新:
swift package update
swift build
迅速なパッケージ更新更新の依存関係
迅速なビルドはクイックパッケージを構築します
swift build -creleaseクイックリリースコードをビルドする
swift package generate-xcodeprojswiftコードからXcodeプロジェクトを作成または更新します
すべての依存関係を取得するための迅速なパッケージ解決
image.png
image.png
Ubuntuの展開には、「始めてからあきらめるまで」という落とし穴がたくさんありますが、結局、[Slack](http://perfect.ly/)で[Perfect-Ubuntu](https://github.com/PerfectlySoft/Perfect-Ubuntu)を偶然見ました。もう一度やり直したいと思いました。 Vaporの使用を開始します...」(Vaporは正常にデプロイされ、ピットが少なくなりました)、そして最後にこの[Perfect-Ubuntu](https://github.com/PerfectlySoft/Perfect-Ubuntu)がデータベースの問題を解決しました。
教材:
[ パーフェクト公式ウェブサイト](http://perfect.org/)[UbuntuにデプロイされたSwift / Perfect](https://www.jianshu.com/p/ae96107ec1ae)[パーフェクトネットワークフレームワークアプリケーション-基本的な方法、MySQL接続およびCppコードアクセス](https://www.jianshu.com/p/bdc56771d13a)[Perfectに基づくSwiftサーバー開発](https://www.jianshu.com/p/3c01574dafc4)[フルスタックSwifter:まず、完璧なフレームワーク](https://www.jianshu.com/p/0b65d5fc7065)