Подтвердить что ты не робот

Как установить пакет в Xcode через Swift Package Manager

Я работаю над проектом в Xcode и пытаюсь установить и использовать пакет CryptoSwift через менеджер пакетов Swift.

Я прочитал документацию по SPM, но не вижу инструкций о том, как вызвать SPM через XCode.

Примеры часто ссылаются на вызов $ swift build. Означает ли это, что SPM доступен только из командной строки? И если да, то где именно я должен создать файл Package.swift?

Я достаточно знаком с XCode, но я не совсем понимаю значение части настроек сборки проекта или как используются модули Swift.

РЕДАКТИРОВАТЬ: Этот вопрос первоначально был задан для Xcode 7.2, который поставляется с Swift 2.1.1. С удовольствием приму ответы, объясняющие, как это сделать с текущими/будущими версиями Xcode.

4b9b3361

Ответ 1

Swift Package Manager теперь поддерживает создание проекта Xcode с помощью

swift package generate-xcodeproj

как указано в этом ответе, но это работает только при разработке библиотеки или инструмента командной строки. Не (пока) для графического разработчика приложений (iOS/OS X):

Обратите внимание, что в это время Менеджер пакетов не поддерживает платформы iOS, watchOS или tvOS.

Примечание:

  • Это может не сработать, если в вашем имени пакета есть пробел, т.е. измените "App Store" на "AppStore".

Ответ 2

В настоящее время для использования диспетчера пакетов Swift, например SPM, вам необходимо установить версию разработки Swift 2.2, предоставленную Apple здесь. Xcode 7.2 поставляется с Swift 2.1.1 и не работает с SPM, если не установлен Swift 2.2-dev.

Вы можете скомпилировать Swift 2.2-dev, но вам нужно будет сделать сборку CryptoSwift в командной строке с помощью swift build. Когда библиотеки и модули отображаются, вы можете перетащить их в Xcode 7.2 с помощью Finder. SPM помещает необходимые файлы в каталог .build. Но Xcode 7.2 необходимо запустить с помощью альтернативной инструментальной цепочки. Это можно сделать из командной строки с помощью xcrun launch-with-toolchain /Library/Developer/Toolchains/swift-latest.xctoolchain Вы должны иметь возможность import из модулей/библиотек, созданных с помощью SPM.

Обратите внимание, что вы не можете отправлять приложения iOS в магазин в тот момент, когда они были созданы с версией разработки 2.2. Вы можете создавать/запускать/тестировать вещи вообще без проблем, хотя игровые площадки не работают, и с отладчиком могут возникать проблемы с Xcode.

Ответ 3

4 июня 2019 г. обновление. Swift 5 и SPM 5 добавили эту поддержку, а Xcode 11 интегрируется с SPM.