无法构建模块UIKit

时间:2013-11-23 14:54:31

标签: ios iphone uikit xcode5

突然间它停止在设备中构建应用程序。在模拟器中它工作,但当我连接设备并尝试在设备中运行它时,它给我一个错误:

  

无法构建模块UIKit

我尝试了很多但无法解决它。

24 个答案:

答案 0 :(得分:20)

请像我一样don't make the same mistake。就我而言,我不小心在Foundation框架文件中输入了一些单词。

答案 1 :(得分:18)

完全清理+删除为我工作的派生数据。

在清理和构建之前,请务必修复因无法安装UIKit而可能损坏的任何代码。

因此,例如,如果您尝试引用UICollectionViewController,并且需要UIKit引用它,请注释掉使用UICollectionViewController的代码,注释掉UIKit的导入。

然后清理,构建。现在取消注释导入UIKIt,构建。现在取消注释UICollectionViewController代码,再次构建。

答案 2 :(得分:8)

可能有帮助的是在XCode偏好设置中将派生数据位置设置为“相对”,然后清洁&构建

XCode derived data location

答案 3 :(得分:7)

由于某种原因你的UIKit.framework已损坏,要么将工作的UIKit.framework从其他地方复制到

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks

或重新安装Xcode解决问题。

答案 4 :(得分:4)

如果你有两个Xcode然后卸载两个并再次安装Xcode.it适合我。

答案 5 :(得分:4)

我不小心编辑了 Foundation framework 文件。 所以UIKit.framework被破坏了。唯一的解决方案是恢复原始。

你有2个解决方案:

1。只需重新安装XCode。

OR

2。从另一台Mac(具有相同的XCode版本)复制框架&粘贴到你的。

<强> 位置

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks

答案 6 :(得分:3)

如果清理项目并删除“派生数据”不起作用, 尝试将“部署目标”(在“常规”选项卡中)从7.0更改为7.1 希望这会有所帮助。

答案 7 :(得分:2)

检查active scheme selector中是否选择了适当的目标。选择Generic iOS Device解决了我的问题。

单击以选择模拟器

enter image description here

选择Generic iOS Device

enter image description here

答案 8 :(得分:2)

确保在Xcode内的UIKit框架中没有编辑任何文件。

答案 9 :(得分:1)

清理衍生数据对我有用

答案 10 :(得分:0)

使用DevCleaner for Xcode应用程序清理一些不必要的Xcode数据对我来说很有效。

答案 11 :(得分:0)

我遇到了这个问题,我在Device上设置了Generic iOS Device,清理项目,进行构建。然后,我将设备切换到实际设备并运行项目。错误不会出现。

答案 12 :(得分:0)

导致相同错误的我的问题是由于在可可豆荚创建的工作区中工作,以某种方式从原始项目中丢失了到UiKit框架的链接。

为解决这个问题,我只是重新打开了xCode项目而不是工作区,并重新添加了缺少的UIKit框架,保存了该项目并关闭了它,重新打开了该项目的工作区,并修复了由此引起的烦人的na消息。希望这可以帮助其他人。

答案 13 :(得分:0)

我的错误是命令行工具版本错误-转到“首选项”->“位置”并更改命令行工具版本-退出xcode并重试。

答案 14 :(得分:0)

就我而言,清理项目后,仅重新启动Mac会有帮助。

答案 15 :(得分:0)

删除DerivedData文件夹中的所有文件夹后,它对我有用。

答案 16 :(得分:0)

检查已安装的工具链,然后选择正确的xcode工具链。就我而言,我将其从Swift 4.0更改为xcode 9.2,并且可以正常工作。

答案 17 :(得分:0)

如果您的项目是为另一个目标构建的(例如,它是为模拟器而不是您的设备构建的),那么它确认您不小心编辑了该目标框架的一个头文件。受影响的框架是您收到的编译错误的框架。

答案 18 :(得分:0)

当我意外修改了uikit框架时,发生了这个错误。删除和重新添加链接二进制文件中的uikit框架与库,清理派生数据和重新启动xcode不起作用。我不想卸载我的xcode所以我试图复制我可能已经从其他pc修改过的类的代码与xcode工作正常并粘贴到我的。它奏效了!

答案 19 :(得分:0)

我尝试删除派生数据,从项目列表中删除应用程序,但是当我删除xcode并安装新的时,它的工作方式最好只删除xcode并安装新的xcode。

答案 20 :(得分:0)

假设您已在UIKit框架中更改或删除了任何内容,则会显示此错误。

如果您能够找到要更改或删除的类或.h文件,则将该.h文件中的整个文件内容替换为其他系统的Xcode(确认应该是类似的Xcode版本)。

例如,在UIView.h文件中 - 我删除了一个方法并关闭并打开了Xcode。然后我无法恢复该代码。

答案 21 :(得分:0)

已经尝试过上述所有解决方案。我仍然无法解决我的问题。所以我卸载Xcode并重新安装它。它神奇地工作。这有帮助。

答案 22 :(得分:0)

我也在很长一段时间内遇到这个问题,在尝试了不同门户网站提供的所有建议后,我才知道问题在于您要运行应用程序的设备。设备有最新的iOS,你的Xcode不支持iOS。

例如,您有Xcode 7.2并希望在具有iOS 9.2.1的设备上运行该应用程序。所以你只需要更新你的Xcode。

构建设置中的另一个 Base Sdk 总是大于或等于开发设备上的软件版本号。

答案 23 :(得分:0)

清理项目并重启xCode对我有用。