在用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

当前回答

在我的情况下,这个问题是由于腐败*。xcworkspace文件。它在左边的project Navigator菜单中显示了我项目的两个不同版本。

为了验证,我从Build Phases > Check Pods Manifest中的bash脚本中删除了输出重定向(> /dev/null)。lock,这样它就会把diff输出到STDOUT。果然,在阅读构建日志时,我得到了完全不同的Podfile。锁定和清单。锁输出。

为了解决这个问题,我删除了*。Xcworkspace,然后运行pod install再次从我的ios文件夹。自动重新生成工作区文件。在XCode中打开这个新文件,瞧,再也没有构建错误了。

其他回答

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

您需要在定制的xcconfig中包含pods生成的xcconfig路径。对我来说,这是因为配置错误的xcconfig文件。

对我来说,问题是我通过复制一个现有的目标在我的应用程序中创建了一个新目标,但忘记将目标添加到Podfile中。由于某种原因,克隆的目标工作了几天没有问题,但过了一段时间后,它无法通过这个错误构建。我必须在Podfile中为我克隆的项目目标创建一个新的目标条目,然后运行pod install。

如果你的舱是空的

删除复制豆荚资源和检查豆荚清单。 从构建阶段锁定项目的设置

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

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

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