更新到Xcode 8后的错误:“没有这样的模块”和“目标覆盖EMBEDDED_CONTENT_CONTAINS_SWIFT”build立设置“
当我尝试构build项目时,我No such module
获得No such module
Pod的No such module
。 如果我删除期望这个Pod的代码,另一个“没有这样的模块”出现在另一个Pod上,这意味着每个Pod都必须受到影响。 当我键入pod install
我收到以下消息:
[!] The X target overrides the `EMBEDDED_CONTENT_CONTAINS_SWIFT` build setting defined in `X'. This can lead to problems with the CocoaPods installation - Use the `$(inherited)` flag, or - Remove the build settings from the target. [!] The `X` target overrides the `ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES` build setting defined in `X'. This can lead to problems with the CocoaPods installation - Use the `$(inherited)` flag, or - Remove the build settings from the target.
我得到了我的应用程序的debugging版本和发行版本以及这两个testing的全部12个消息。
我已经设置了Always Embed Swift Standard Libraries
和EMBEDDED_CONTENT_CONTAINS_SWIFT
NO
和YES
都在我的生成设置,这没有做什么。 我也将下面的代码添加到我的Podfile中,但它也不起作用:
post_install do |installer| installer.pods_project.targets.each do |target| target.build_configurations.each do |config| config.build_settings['ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES'] = 'NO' end end end
[!] The `X` target overrides the `ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES` build setting defined in `X'. This can lead to problems with the CocoaPods installation - Use the `$(inherited)` flag, or - Remove the build settings from the target.
我今天遇到了这个问题。 我解决了它
- 转到项目/目标 – > [项目名称] – >生成设置。
- search“ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES”
- 点击Debug的右边,选中'Other',input“$(inherited)”
- 与“发布”一样,并安装您的吊舱
你可以按照下面的图片。
运行pod install
时看到的错误不应导致“ No such module
错误。 所以我的猜测是这些错误是无关的。
要摆脱pod install
错误:
发生这种情况是因为您在您的构build设置中定义了一个覆盖由CocoaPods设置的标志。 将它设置为YES
或NO
并不重要,它仍然会覆盖CocoaPods的设置。
要解决这个问题:
- 转到项目/目标 – > [项目名称] – >生成设置。
- find并点击相关设置(您可以使用右上angular的search框)。
- 按
Backspace
删除设置。
你应该看到从粗体到正常字体的设置。 这意味着该设置已被删除,而是使用默认值。
重复每个标志给你一个错误,并重新运行pod install
来validation它的工作。
No such module
错误的原因:
有许多方法可能会发生此错误。 你看过这些答案,看看是否适用于你的情况? 如果你报告,这将是更容易帮助你。
- Xcode:“没有这样的模块”错误,但框架在那里
- 在Xcode 7 beta 2上“没有这样的模块”
(截至2017年10月10日更新)
- 项目/目标 – >项目名称 – >生成设置
- 构build选项
- 点击总是embeddedSwift标准库 ,使其突出显示
- 按下键盘上的删除button
总是embeddedSwift标准库不应该是粗体 ,并且在执行pod更新或pod安装时不会再收到此警告=)
这是我为我工作的:
pod deintegrate || rm -rf Pods pod install --verbose rm -rf ~/Library/Developer/Xcode/DerivedData
然后,我只是清理我的项目,并再次build立。
当我第二次在我的项目中导入SDWebImage的时候,它没有findModule FLAnimatedImage,当我安装pod时,它警告“… ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES … – 使用$(inherited)
标志,或者 – 从目标。” 最后,我find了完全去除SD的方法,在取景器中find了专门的方法,然后在模拟器中删除项目,然后再导入SD。