Добавьте xcframework в качестве зависимости от пакета Swift с помощью SSH

#swift #swift-package-manager #xcframework

Вопрос:

Когда я пытаюсь добавить свою xcframework в качестве зависимости от пакета swift через URL-адрес ssh, Xcode выдает мне ошибку

 Showing All Messages
x-swift-package-repository-authentication://?scm=com.apple.dt.Xcode.sourcecontrol.Gitamp;url=git@ghe.somegiturl.git#error=-1005 Authentication failed because the credentials were missing
 

Я могу клонировать это репо через тот же URL-адрес ssh через исходное дерево, оно отлично работает. Файл пакета.манифеста ниже

 let package = Package(
name: "Test",
platforms: [
         .iOS(.v12)
    ],
products: [
    // Products define the executables and libraries a package produces, and make them visible to other packages.
    .library(
        name: "Test",
        targets: ["Test"]),
],
dependencies: [
    // Dependencies declare other packages that this package depends on.
    // .package(url: /* package url */, from: "1.0.0"),
],
targets: [
    // Targets are the basic building blocks of a package. A target can define a module or a test suite.
    // Targets can depend on other targets in this package, and on products in packages this package depends on.
    .binaryTarget(
                name: "Test",
                path: "Test.xcframework"
            ),
    .testTarget(
        name: "TestTests",
        dependencies: ["Test"]),
]
 

)

Комментарии:

1. Инструмент Xcode SPM поддерживает только ssh-ключи, сгенерированные с помощью алгоритма RSA. Сгенерируйте свой SSH-ключ с помощью алгоритма RSA, и эта проблема не помешает вашей работе.