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

当前回答

如果你在Podfile中删除目标的所有pod,例如:

target 'myTarget' do
pod 'great-stuff', '~> 4.0'  // you deleted this last pod
end

你需要从你的Xcode目标构建阶段手动删除这些构建步骤:

检查pod Manifest.lock 复制Pod资源

Cocoapods(当前稳定版本0.37.2)在运行pod install时不执行此清理。

其他回答

对我有效的步骤(XCode 8.3.3/XCode 9 beta与Swift 3.1项目)

 - Navigate to your project directory
 - pod install //which then asks you to do the next step
 - pod repo update //takes a while to update the repo
 - pod update
 - pod install
 - Close Xcode session
 - Open and Clean the project
 - Build/Run

另外,在使用pods时,请确保打开的是.xcworkspace文件而不是项目文件(.xcodeproj)。这应该解决任何错误的链接,如“苹果Mach -O链接器命令失败”

在项目中检查pod可能没有被推送到Git。所以很明显compile将会崩溃,因为它无法找到Pods目录

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

我通过在终端中导航到我的项目目录后发出pod install来解决这个问题。

事实上,我有一个错误无法找到pod命令,这意味着cocoapods没有安装。这是通过gem install cocoapods来修复的。如果遇到依赖项错误,只需安装报告丢失的每个命令。在我的情况下,我必须更新Ruby,在cocoapods正确安装后,我可以使用命令舱安装。

PS.如果你有pod目录,尝试pod更新。也许你的库需要更新。

我混淆了上面的一些评论,这解决了我的问题

一、项目清理

在项目导航器中,选择您的项目 选择目标 删除所有libpod *。a在构建阶段>链接二进制与库

2清洁构建文件夹

在XCode中:菜单栏→产品→产品->清洁构建文件夹

3更新cocapods

运行pod更新

从项目中移除吊舱并重新安装对我来说很有效。

有一个很好的GitHub存储库可以完全从项目中删除pod。

只需要保留PodFile的备份并运行以下命令。

Gem安装cocoapods-deintegrate 宝石安装椰荚干净 进入项目目录并运行pod deintegrate 再次运行pod clean 运行pod安装

清理干净,然后跑。

我的回答是:

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