Хорошо, я нашел решение, поэтому Swift фактически генерирует файл Bundle.module
?
В документации явно указано, что вы должны поместить свой Resources
в папку <project_root>/Sources/<MyTarget>/
поскольку SPM оценивает ресурсы по цели. Тогда целевое определение для моего репо выглядит следующим образом SHSearchBar (сравните файловую структуру на Github):
// swift-tools-version:5.3
import PackageDescription
targets: [
.target(
name: "SHSearchBar",
resources: [.copy("Resources")]
)
]
Целевая папка: <project_root>/Sources/SHSearchBar
Папка ресурсов: <project_root>/Sources/SHSearchBar/Resources
Кстати, чтобы собрать пакет iOS из командной строки, вы можете использовать эту команду, используя iOS 14 SDK:
swift build -Xswiftc "-sdk" -Xswiftc "\`xcrun --sdk iphonesimulator --show-sdk-path\`" -Xswiftc "-target" -Xswiftc "x86_64-apple-ios14.0-simulator"
Чтобы сделать мой небольшой пост здесь завершен Я также хочу упомянуть, что пакет, использующий подход Bundle.module
, может быть интегрирован в приложения, которые работают на iOS <14, так как сгенерированное расширение не содержит никакого нового API ? </p>