RxSwiftをSwiftPMからインストールして使ってみる
はじめに
RxSwiftをSwiftPMでインストールし、Xcodeプロジェクトで使おうと思ったのですが、方法がわからず悪戦苦闘した結果なんとか実行できるようになったので、備忘録的に記事を書こうと思いました。
(正しい使い方ではないかもしれません...というか、全然自信ないです。詳しい人に教えてもらいたい)
環境
Mac OS X El Capitan 10.11.6
Xcode 8.2.1
Swift 3.0.2
プロジェクトの作成
Xcode -> Create a new Xcode project -> iOS -> Single View Application
から新規作成
プロジェクト名は「RxSample」としました。
SwiftPMのセットアップ
$ cd RxSample #作成したプロジェクトのルートフォルダに移動
$ ls
>> RxSample RxSample.xcodeproj RxSampleTests
$ touch Package.swift
パッケージの追加
import PackageDescription
let package = Package(
name: "RxSample",
dependencies: [
.Package(url: "https://github.com/ReactiveX/RxSwift.git", majorVersion: 3)
]
)
パッケージのFetch
swift package fetch
フレームワークの追加
Linked Frameworks and Libraries -> Add Other から
./Packages/RxSwift-3.x/Rx.xcodeproj
を追加。

FrameworksにRx.xcodeprojが追加された後、
もう一度Linked Frameworks and Librariesを確認すると

RxSwiftのターゲットが選択できるようになっているので、必要なものをAdd。
モジュールのインポート

import RxSwift
でインポートできるようになっていると思います。
もし、表示されない場合、Xcode -> Product -> Build から一度ビルドをすることで
認識されるようになります。
あとがき
大人しくCocoaPodsやCarthageを使っていればすんなり使えてたと思います...。
SwiftPMは本来こういう使い方をしないんでしょうか?勉強不足です...。