在用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安装并复制pod /Manifest文件的内容来解决。锁到Podfile.lock文件

经过多次尝试,我终于解决了这个问题。变量${PODS_ROOT}没有设置,我做下面的技巧。 去构建阶段->检查Pods清单。锁定和替换

diff "${PODS_ROOT}/../Podfile.lock" "${PODS_ROOT}/Manifest.lock" > /dev/null

to

diff "${SRCROOT}/Podfile.lock" "${SRCROOT}/Pods/Manifest.lock" > /dev/null

这对我有帮助。

对我来说,这是Ruby版本号的问题。

我得到了错误:

The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.

在尝试了一百万件事情之后,包括这个线程中包含的大部分内容,我最终破解了位于:usr/local/bin/pod的pod文件

我更正了第一行,以指向我的机器上实际存在的ruby版本。我改变了:

#!/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/ruby

to

#!/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/ruby

经过几天的努力,从3级到6级一切都解决了。

Completely nothing worked out for me from these answers. Had to create the project again by running cordova platform add ios. What I've noticed, even freshly generated project with (in my case) Firebase pods caused the error message over and over again. In my opinion looks like a bug for some (Firebase, RestKit) pods in Xcode or CocoaPods. To have the pods included I could simply edit my config.xml and run cordova platform add iOS, which did everything for me automatically. Not sure if it will work in all scenarios though.

编辑:我有一个Podfile从以前的iOS/Xcode,但最新的今天有# DO NOT MODIFY -自动生成的Apache Cordova在Podfile。这让我的脑海中亮起了一盏灯,开始尝试这种方法。看起来有点琐碎,但很管用,我的Firebase功能也很管用。

pod deintegrate <PROJECT>.XCODEPROJ // will deintegrate cocoapods
pod install // installs the pods