2016-07-09 4 views
0

Я хочу сделать порт моим приложением командной строки Node.js для Swift, и я не хочу использовать Xcode для этого (в Linux).Swift без Xcode importing class

Имеет ли диспетчер пакетов Swift определенную структуру пакетов, и смогу ли я использовать существующие рамки Xcode для своего приложения?

Спасибо!

Ганса

ответ

0

Если вы на Linux, вы можете использовать Swift Package Manager. Это позволит вам импортировать пользовательские модули и загружать внешние фреймворки (ака зависимости). Тем не менее, я считаю, что вам может понадобиться быстро построить источник, чтобы использовать его.

Структура вашего проекта, скорее всего, потребуется изменить. SwiftPM довольно строг.

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

ExampleProject/ 
    Package.swift 
    Sources/ 
     MyLibrary/ 
      components.swift 
     MyExecutable/ 
      main.swift 

Эта структура позволит вам импортировать модуль MyLibrary из файла main.swift.

Обратите внимание, что единственная разница здесь в библиотеке не содержит файла main.swift, в то время как исполняемый файл делает это.

Вам также необходимо будет сделать файл манифеста - Package.swift - с SwiftPM также требуется для создания пакетов. Вот some of their examples on how to build packages.