gpt4 book ai didi

swift - 如何从 SwiftPM 生成的 XCode 项目生成框架?

转载 作者:行者123 更新时间:2023-11-28 07:53:43 25 4
gpt4 key购买 nike

我使用 SwiftPM 为一个框架建立了一个 XCode 项目;基于

// swift-tools-version:4.0

import PackageDescription

let package = Package(
name: "MyThing",
products: [
.library(
name: "MyThing",
targets: ["MyThing"]),
],
dependencies: [
],
targets: [
.target(
name: "MyThing",
dependencies: [])
)

我运行了 swift package generate-xcodeproj,然后运行了 pod install(基于内容不重要的 Podfile)。我获得了 MyThing.xcworkspace

现在我想到了

xcodebuild -workspace MyThing.xcworkspace -scheme MyThing clean build

应该创建 .framework —— 但它没有,只出现一个二进制文件。我怀疑这里有一些自动机制在起作用,因为源文件夹包含一个名为 main.swift 的文件,等等。

我需要做什么才能构建框架?
我需要编写整个过程的脚本,以避免手动解决方法。

最佳答案

从 Swift 4.0 开始,swift package generate-xcodeproj 不会自动为所有目标生成方案,但仍然可以从 Xcode 访问这些目标。

如果可以接受一次手动创建新方案,您可以这样做并将您的框架目标添加为方案构建目标。

否则,可以使用 xcodeswift/xcproj 等库以编程方式创建新方案,它允许您解析新生成的 Xcode 项目并使用其 XCSharedData 类生成新方案。

创建新框架方案后,您可以使用 xcodebuild -workspace MyThing.xcworkspace -scheme MyThingFramework clean build 运行构建。

关于swift - 如何从 SwiftPM 生成的 XCode 项目生成框架?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48929567/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com