在Package.swift中指定最低OS版本时遇参数标签错误
问题解决:Package.swift中platforms字段报错的原因及修复方法
错误原因
你使用的swift-tools-version:4.0版本过旧,platforms参数是Swift Package Manager在Swift Tools Version 5.0及以后才新增的配置项,4.0版本的Package初始化方法并不支持这个参数,因此会出现参数标签不匹配的报错。
修复方案
方案1:升级Swift Tools Version(推荐)
- 修改
Package.swift第一行的版本声明:
将
改为// swift-tools-version:4.0
(可根据你当前安装的Swift版本选择更高兼容版本,比如5.7、5.9等)// swift-tools-version:5.0 - 移除target定义末尾多余的逗号(
.target(name: "Testing",)中的逗号) - 重新执行
swift build即可正常识别platforms配置。
方案2:保留4.0版本时的替代方式(不推荐)
如果必须使用tools版本4.0,需通过编译标记指定最低OS版本:
修改target配置为:
.target( name: "Testing", swiftSettings: [ .unsafeFlags(["-target", "x86_64-apple-macosx10.12"]) ] )
注意:这种方式需要根据当前架构(如arm64)调整参数,且属于非官方推荐的unsafe用法,仅作临时兼容使用。
内容的提问来源于stack exchange,提问作者user252164
相关产品推荐
相关产品推荐

