"предупреждение: нет целей для сборки в пакете" ошибка в менеджере пакетов 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

См:

https://swift.org/getting-started/

Я была такая же проблема.

Я нашел документацию для 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"))
Другие вопросы по тегам