"предупреждение: нет целей для сборки в пакете" ошибка в менеджере пакетов swift
Я пытаюсь установить SocketIO в свой проект swift 4 iOS с помощью менеджера пакетов swift. Файл Package.swift выглядит так:
// swift-tools-version:4.0
// The swift-tools-version declares the minimum version of Swift required to build this package.
import PackageDescription
let package = Package(
name: "MyApp",
dependencies: [
.package(url: "https://github.com/socketio/socket.io-client-swift", .upToNextMajor(from: "12.0.0"))
]
)
В командной строке, когда я набираю 'swift build', пакеты выбираются, но возникает ошибка:
"предупреждение: нет целей для сборки в пакете"
Когда я пытаюсь импортировать SocketIO в мое приложение, я получаю:
Ошибка "Нет такого модуля" SocketIO "".
Я впервые использую диспетчер пакетов. Просто интересно, как решить эту проблему и нужно ли мне добавлять цели самостоятельно в файл Package.swift?
Не уверен, что правильно настроил диспетчер пакетов. Также интересно, есть ли способ удалить и переустановить Package Manager? Или это просто вопрос замены файла Package.swift в каталоге проекта.
2 ответа
Не могли бы вы попробовать следующее:
- использование
.Package
вместо.package
- использование
majorVersion: 12, minor: 0
вместо.upToNextMajor
Код:
import PackageDescription
let package = Package (
name: "MyApp",
dependencies: [
.Package(url: "https://github.com/socketio/socket.io-client-swift", majorVersion: 12, minor: 0)
]
)
Выход:
При успешном построении будет создано следующее:
Package.resolved
будет содержать используемые пакеты.build
Создан скрытый каталог, в котором будут находиться файлы сборки.
Проверено на:
- Swift 4.0
См:
Я была такая же проблема.
Я нашел документацию для SPM v4.
По этой ссылке
Итак, вы должны попробовать это:
// 1.0.0 ..< 2.0.0
.package(url: "/SwiftyJSON", from: "1.0.0"),
// 1.2.0 ..< 2.0.0
.package(url: "/SwiftyJSON", from: "1.2.0"),
// 1.5.8 ..< 2.0.0
.package(url: "/SwiftyJSON", from: "1.5.8"),
// 1.5.8 ..< 2.0.0
.package(url: "/SwiftyJSON", .upToNextMajor(from: "1.5.8")),
// 1.5.8 ..< 1.6.0
.package(url: "/SwiftyJSON", .upToNextMinor(from: "1.5.8")),
// 1.5.8
.package(url: "/SwiftyJSON", .exact("1.5.8")),
// Constraint to an arbitrary open range.
.package(url: "/SwiftyJSON", "1.2.3"..<"1.2.6"),
// Constraint to an arbitrary closed range.
.package(url: "/SwiftyJSON", "1.2.3"..."1.2.8"),
// Branch and revision.
.package(url: "/SwiftyJSON", .branch("develop")),
.package(url: "/SwiftyJSON", .revision("e74b07278b926c9ec6f9643455ea00d1ce04a021"))