在用cocoapods安装RestKit之后,我遇到了一个奇怪的问题。 在用cocoapods解决我的项目的RestKit依赖关系并试图构建它之后,我面临这个错误:

沙箱与Podfile.lock不同步。运行“pod install”或更新CocoaPods安装。

我试着运行pod安装,但没有变化。

以下是一些照片:

  PODS:
  - AFNetworking (1.3.3)
  - RestKit (0.20.3):
    - RestKit/Core
  - RestKit/Core (0.20.3):
    - RestKit/CoreData
    - RestKit/Network
    - RestKit/ObjectMapping
  - RestKit/CoreData (0.20.3)
  - RestKit/Network (0.20.3):
    - AFNetworking (~> 1.3.0)
    - RestKit/ObjectMapping
    - RestKit/Support
    - SOCKit
  - RestKit/ObjectMapping (0.20.3)
  - RestKit/Search (0.20.3):
    - RestKit/CoreData
  - RestKit/Support (0.20.3):
    - TransitionKit (= 1.1.1)
  - RestKit/Testing (0.20.3)
  - SOCKit (1.1)
  - TransitionKit (1.1.1)

DEPENDENCIES:
  - RestKit (~> 0.20.0)
  - RestKit/Search (~> 0.20.0)
  - RestKit/Testing (~> 0.20.0)

SPEC CHECKSUMS:
  AFNetworking: 61fdd49e2ffe6380378df37b3b6e70630bb9dd66
  RestKit: 1f181c180105a92f11ec4f6cd7de37625e516d83
  SOCKit: 2f3bc4d07910de12dcc202815e07db68a3802581
  TransitionKit: d0e3344aac92991395d4c2e72d9c5a8ceeb12910

COCOAPODS: 0.29.0

当前回答

如果你从github下载项目或从其他地方复制,那么依赖库不存在,就会出现这个问题。

你只需要cd到终端的project/project_name目录,使用ls检查是否有Podfile文件。

如果存在Podfile,你只需要安装依赖项:

pod install

其他回答

当你这样做时

pod install --verbose

确保:

1-您在正确的目录。大多数情况下,当下载一个github项目时,会有一个主文件夹。在调用pod install——verbose之前,您需要在终端中的实际项目名称文件夹(masterfolder/project folder)中

2-删除旧的pod锁文件夹,然后使用xcode clean & do pod install清理项目。

3-保持rvm更新。

我们也遇到了同样的问题,我们团队中有人打开了Podfile。锁在Visual Studio Code中,保存它,编辑器已经删除了文件末尾的CR(回车)。重新引入“CR”解决了这个问题。 所以一定要运行这个命令来找出这些文件不同的原因。

diff "${PODS_ROOT}/../../Podfile.lock" "${PODS_ROOT}/Manifest.lock"

我的回答是:

通过以下命令安装更新cocoapods: 豆荚更新 通过这个命令安装新的pod。 圆荚体安装 最后一个命令: Sudo gem安装cocoapods。

我在最新的ComponentKit 0.14上也有同样的问题。 原因是PODS_ROOT没有设置,我发现解决方案是添加一行到ComponentKit。xcconfig:

#include "../Pods/Target Support Files/Pods-ComponentKit/Pods-ComponentKit.debug.xcconfig"

我使用包中的可可荚安装。

安装打包机 在项目根目录中添加Gemfile 在Gemfile中添加所需的宝石 包安装 然后总是使用bundle exec pod install

如果你不知道如何操作这些步骤之一,在谷歌上搜索会有帮助:)