有没有办法为 Xcode Playground 设置部署目标

问题描述 投票:0回答:1

我已升级到 MacOS 11 (Big Sur) Beta 4。和 Xcode 12 beta 4。

我有一个 Swift 游乐场,结合了合并发布者:

Just([1,2,3])
    .setFailureType(to: Error.self) // Make the compiler pick up new API in MacOS Big Sur
    .flatMap { $0.publisher }
    .sink(receiveCompletion: { print($0) }, receiveValue: { print($0) })

升级后,我的 Playground 开始失败,并显示以下消息: “'flatMap(maxPublishers:_:)' 仅在 macOS 11.0 或更高版本中可用”。 swift 编译器未指示代码中的任何错误。如果将代码放置在普通的 Xcode 命令行应用程序项目中,则代码可以正常工作。

可以通过将发布者包含在可用性检查中来减轻错误,例如游乐场中的

if #available(macOS 11.0, *) { }

我假设这是一个错误,并且我已向 Apple 提交了问题。

或者这是预期的行为吗?如果是……有没有办法向游乐场暗示要假设的部署目标?如果它没有正确获取正在运行的操作系统的实际版本。

谢谢!

swift xcode swift-playground xcode12
1个回答
1
投票

如果您想为 Playground 显式指定不同的部署目标,您可以在 Playground 设置中执行此操作。方法如下:

  1. 打开你的游乐场文件。转到菜单栏并选择“编辑器”> “显示项目导航器”以显示左侧的文件列表
    侧面。

  2. 在项目导航器中,您应该会看到您的游乐场文件。 右键单击(或按住 Control 单击)它并选择“显示文件检查器”。

  3. 在文件检查器中,您可以找到一个名为
    的部分 “部署目标。”

  4. 您可以将其更改为不同的 macOS 如果需要版本。

© www.soinside.com 2019 - 2024. All rights reserved.