错误:模块文件的最低部署目标是 iOS 8.3 v8.3。

110

在 Xcode Playground 中导入动态框架的所有尝试均会出现以下错误:

error: module file's minimum deployment target is ios8.3 v8.3
9个回答

169

您可能在更新Xcode后创建了一个目标,这使得该目标的构建设置中的iOS部署目标变为8.3。

我通过以下方法进行了修复:

  1. iOS部署目标设置为8.0(与项目的其余部分相同)

请注意此屏幕截图中的iOS版本不匹配(一个是10.0,另一个是9.3) 请注意iOS版本不匹配

请注意现在iOS版本匹配(确保它们全部匹配) 已更改为匹配的iOS版本

  1. 执行Clean(Command+Shift+k)并重新构建

如果Clean+Build不能解决问题,从方案菜单中切换要部署到的设备/模拟器并再次构建应该会有所帮助。


请注意:Xcode 6.3的GM版本已经解决了这个问题。 - Vatsal Manot
5
不是针对我,我只是得到了这个版本,问题仍然适用于我。 - Nate Uni
我不得不尝试多次:当我更改部署目标时,似乎并没有真正改变,直到我切换到另一个部署设备。然后它终于起作用了。 - Suz
将我的Xcode项目的部署目标更改后,问题得到了解决。 - King-Wizard
1
@EugeneDubinin:在使用不存在的API时,它会崩溃。试图支持多个iOS版本的开发人员通常会为这些事情实现运行时检查。 - Vatsal Manot
显示剩余5条评论

81

如果您正在进行单元测试,也可能会出现此错误。因此,除了@Tony和@Allreadyhome提供的建议之外,还需要执行以下操作:

  • 选择测试目标后,转到“构建设置”
  • 在顶部搜索栏中搜索“iOS部署目标”。
  • 相应地更改iOS部署目标的值(在这个问题的上下文中,您将把部署目标更改为8.0)

这样就可以解决问题了。


3
我已经寻找这种方法好几个星期了!非常感谢!仅仅是一个提示,如果选择了“基本”选项卡,可能不会显示出来。在搜索之前选择“全部”,就可以顺利进行了。 - jotaEsse
1
这也促使我检查了“项目”的构建设置,它们也很老旧。更新了那些设置,现在一切都很完美!谢谢! - u2Fan
其他答案中缺少的是“选择测试目标...”。 - gnarlybracket

18

正如Tony所提到的,你需要:

1. 将iOS部署目标设置为8.0

如果使用Pods,则可能需要执行以下步骤:

2. 进入Pods依赖项并将部署目标也更改为8.0。

在我的情况下,我不得不将每个Pod的部署目标都更改为8.0,因为它们全部都是8.3。


12
在你的Pod文件中,只需删除此行的注释即可:

platform :ios, '8.0'

对我很有效。


6
我遇到了错误:

Module file's minimum deployment target is ios9.2 v9.2

在我将 iOS 部署目标更改为 8.0 后,我的项目出现了问题。该项目是由 Xcode 7.2 创建的,勾选了 '包含单元测试' 和 '包含 UI 测试'。

因为 XCUIApplication() 需要 iOS 9.0+,要解决这个问题,只需将UI 测试的部署目标更改为 9.0 或更高版本,而将其他目标保留为 8.0。


2

1) 转到,目标 -> 一般 -> 部署信息。

2) 将部署目标设置为错误消息中提示的目标(在您的情况下为8.3)。

3) 产品 -> 清理

4) 产品 -> 构建


1
当选择的一些依赖项的最低部署目标设置为比主目标的最低部署目标更近的iOS版本时,我遇到了这个问题。

1
我在下载一个针对iOS 12的框架教程时遇到了同样的问题,但我的SDK需要iOS 11.4。我将iOS部署目标设置为我所需的版本(11.4),并更新了Pods依赖项,但仍有一些遗漏。因此,我搜索了我想要更改的版本(即12.0),它列出了所有具有该版本号的内容(目标、项目、podspec和pods)。将这些内容中每一个都更改为我所需的版本(在我的情况下是11.4),问题得以解决。

0

我们必须更改两个地方以获取新的部署版本。 之后,进行清理构建(Command+Shift+k)并重新构建。

enter image description here

enter image description here


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接