[Swift] コマンドラインからパッケージを作る

Swiftのパッケージをコマンドラインから作成するときのメモ

環境

Mac OS 10.14.5
Xcode Version 10.2.1

パッケージの初期化

  1. 作成したいパッケージの名前のディレクトリを作成
  2. 作成したディレクトリの中に移動
  3. パッケージの初期化

今回は、パッケージ名をexampleとしてみます。

mkdir example
cd example
swift package init

上記のコマンドを実行すると以下のようなファイルが出来上がる

Creating library package: example
Creating Package.swift
Creating README.md
Creating .gitignore
Creating Sources/
Creating Sources/example/example.swift
Creating Tests/
Creating Tests/LinuxMain.swift
Creating Tests/exampleTests/
Creating Tests/exampleTests/exampleTests.swift
Creating Tests/exampleTests/XCTestManifests.swift

この段階ですでにビルドとテストが出来る状態なので試してみる

swift build
[1/1] Compiling Swift Module 'example' (1 sources)
swift test
[2/2] Linking ./.build/x86_64-apple-macosx/debug/examplePackageTests.xctest/C…
Test Suite 'All tests' started at 2019-08-09 23:15:51.779
Test Suite 'examplePackageTests.xctest' started at 2019-08-09 23:15:51.780
Test Suite 'exampleTests' started at 2019-08-09 23:15:51.780
Test Case '-[exampleTests.exampleTests testExample]' started.
Test Case '-[exampleTests.exampleTests testExample]' passed (0.193 seconds).
Test Suite 'exampleTests' passed at 2019-08-09 23:15:51.973.
   Executed 1 test, with 0 failures (0 unexpected) in 0.193 (0.193) seconds
Test Suite 'examplePackageTests.xctest' passed at 2019-08-09 23:15:51.973.
   Executed 1 test, with 0 failures (0 unexpected) in 0.193 (0.193) seconds
Test Suite 'All tests' passed at 2019-08-09 23:15:51.973.
   Executed 1 test, with 0 failures (0 unexpected) in 0.193 (0.194) seconds

中身がほぼ無いので特にエラーが出るわけでもなく正常に終了する。

プロジェクトファイルの作成

全部コマンドだと辛い場合には以下のコマンドを実行するとXcodeのプロジェクトファイルが作成できる。

swift package generate-xcodeproj

Package.swiftの内容をもとにプロジェクトファイルが作成されるようです。

作成されたプロジェクトファイルをXcodeで開けば、普通に利用できます。