Разделить пакет Swift на два (или более) отдельных импорта

Я погружаюсь в управление зависимостями с помощью SPM, вот мой Package.swift

      let package = Package(
    name: "MyPackage",
    products: [
        .library(
            name: "MyPackage",
            targets: ["MyPackage"]),
    ],
    targets: [
        .target(
            name: "MyPackage",
            path: "Sources") // it targets a whole folder 
    ]
)

Дело в том, что, поскольку я создаю персональный пакет, который объединяет множество различных служебных методов и классов, которые не являются взаимозависимыми, я хочу иметь возможность разделить его на разные «модули» или «импорт».

Например, у меня есть 2 подпапки в Sources: Widgets а также Networking. Первый собирает все мои виджеты UIView / UIControls, а второй - набор протоколов, который помогает мне создавать класс API.

Я хочу иметь возможность разделить эти два на два импорта, учитывая, что иногда мне не нужен тот или другой в моих проектах. сделать возможным писать import MyPackageNetworking а также import MyPackageWidgets

Я пытался:

      let package = Package(
    name: "MyPackage",
    platforms: [
        .iOS(.v14)
    ],
    products: [
        .library(
            name: "MyPackage",
            targets: ["MyPackageNewtorking", "MyPackageWidgets"]),
    ],
    targets: [
        .target(
            name: "MyPackageNewtorking",
            path: "Sources/Newtorking"),
        .target(
            name: "MyPackageWidgets",
            path: "Sources/Widgets")
    ]
)

но с этой стороны не повезло. Кто-нибудь знает как это сделать?

0 ответов

Другие вопросы по тегам