作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我使用 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/
我是一名优秀的程序员,十分优秀!