安装新的cocoapod后缺少必需的模块

时间:2018-12-15 15:53:55

标签: ios swift cocoapods xcode9

我有一个使用多个自定义框架的项目。这些自定义框架具有一些Pod作为依赖项,例如Alamofire,SwiftKeychainWrapper等,因此我将它们安装在主项目中。

一切正常,直到我尝试安装新的自定义框架所依赖的新pod(“ RealmSwift”)为止。安装后,我得到此错误:

  

diff:/Podfile.lock:没有这样的文件或目录
  差异:/Manifest.lock:没有这样的文件或目录
  错误:沙箱与Podfile.lock不同步。运行“ pod install”或更新您的CocoaPods安装。

我可以通过为PODS_PODFILE_DIR_PATHPODS_ROOT添加两个USER_DEFINED构建设置来解决此问题(但是为什么运行pod install会改变这一点?)

然后,当我尝试构建时,所有将pod作为依赖项的自定义框架在尝试导入时都会出现此错误:

  

示例:
  缺少必需的模块:“ Alamofire”,“ SwitfKeychainWrapper”等。

为什么Xcode看不到这些模块?他们正好在以前。

我已经尽一切努力解决了这个问题。清理,删除派生数据,将我的Pod集成在一起并重新安装所有Pod,编辑导入路径和标头搜索路径,似乎没有任何作用。

我将非常感谢您的帮助!

3 个答案:

答案 0 :(得分:1)

您的广告连播似乎需要更新。 请执行此命令。 'pod更新'

答案 1 :(得分:0)

AlamofireSwitfKeychainWrapper添加到您的embedded libraries中。通常,这可以解决问题,但仍然可以解决问题,然后尝试将它们都添加到Linked Framework and Librariesembedded libraries中。

答案 2 :(得分:0)

我终于想通了。当我运行pod install时,它完全改变了我的构建设置。特别是,它正在更改查找Pods.xcconfig文件的路径。

如果转到项目(在目标上方)->信息->配置,则应该看到调试和发布Pod的xcconfig文件。如果Xcode找不到这些文件,它将无法使用任何Pod。

所以我的解决方案是在运行pod install之后,只丢弃对项目文件(用于管理构建设置的所有更改)。