Начало работы со Swift Package Manager

Автор: | 04.08.2026

При разработке iOS-приложений с использованием Swift часто возникает необходимость использовать сторонние библиотеки в качестве зависимостей, чтобы избежать повторного написания кода, который уже создан и опубликован другими разработчиками. Swift Package Manager (SwiftPM) — это инструмент командной строки для сборки, тестирования и управления зависимостями Swift-проектов.

Мы создадим очень простую консольную программу на Swift, которая будет парсить JSON с использованием популярного фреймворка SwiftyJSON, чтобы научиться работать со SwiftPM.

Для использования Swift Package Manager на OS X вам понадобится Xcode 8.0 или выше и Swift 3.0 или выше. Swift 3 также доступен в Linux.

Чтобы узнать, какая версия Swift у вас установлена, введите следующую команду в терминале:

Откройте терминал и создайте новый каталог, где будет находиться ваш проект. Затем создайте Swift-пакет в этом каталоге с помощью следующей команды. Эта команда назовет ваш Swift-пакет в честь текущего каталога. Для справки, я назвал свой `SPMTest`:

Самая важная часть создания Swift-пакета — это файл `Package.swift`.

В файле `Package.swift` есть два важных элемента, которые вы можете захотеть отредактировать:

— Элемент `name`. Он указывает название проекта и название исполняемого файла, который будет сгенерирован при сборке проекта.

— Список `dependencies`. Он указывает все подпроекты, от которых зависит ваше приложение. Каждый элемент в этом массиве состоит из `.Package` с URL репозитория и версией.

Откройте `Package.swift` и добавьте SwiftyJSON в качестве зависимости:

Теперь загрузите зависимости с помощью следующей команды:

Все зависимости загружаются в каталог `Packages`, который SPM создаст автоматически.

Теперь, когда SwiftyJSON установлен, мы можем использовать его как фреймворк. Создайте файл с именем `main.swift` в каталоге `Sources`. SwiftPM использует этот файл, чтобы решить, что делать при запуске нашей программы.

Добавьте базовый код для парсинга JSON в `Sources/main.swift`:

Теперь соберите проект, выполнив следующую команду из корневого каталога вашего проекта:

SPM сгенерирует исполняемый файл для этого проекта. Из корневого каталога вашего проекта запустите этот исполняемый файл и надейтесь, что JSON будет распарсен корректно:

Вы также можете использовать SwiftPM для генерации Xcode-проекта, выполнив:

После этого откройте ваш новый сгенерированный Xcode-проект:

Это позволит вам использовать все преимущества редактирования Swift в Xcode, такие как отличная автодополнение.

Несмотря на то, что он новый, радует, что у Swift теперь есть официальный менеджер пакетов.

Если вы беспокоитесь о его готовности для продакшн-приложений, возможно, вам стоит пока использовать CocoaPods или Carthage, пока SwiftPM не получит более широкое распространение. Если вы хотите увидеть, какие замечательные пакеты можно использовать со SwiftPM, посетите веб-сайт Swift Modules.

С нетерпением жду, что вы создадите. Не стесняйтесь делиться своим опытом или задавать вопросы.

— Email: sagnew@twilio.com

— Twitter: @Sagnewshreds

— Github: Sagnew

— Twitch (стриминг живого кода): Sagnewshreds