我无法构建使用CocoaPods的项目。我收到以下错误:
diff: /../Podfile.lock: No such file or directory
diff: Manifest.lock: No such file or directory error:
The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.`
$ pod install
似乎工作正常,并在我的工作区添加了Pods
项目。我试过$ pod update
,但这没有用。
似乎没有设置PODS_ROOT
。
Podfile:
platform :ios, '6.0'
workspace 'Example.xcworkspace'
xcodeproj 'example/Example.xcodeproj'
pod 'TestFlightSDK', '~> 1.3.0-beta.5'
pod 'TestFlightLogger', '~> 0.0.2'
pod 'CocoaLumberjack', '~> 1.6.2'
pod 'Reachability', '~> 3.1.0'
pod 'SBJson', '~> 3.2'
pod 'MKMapViewZoom', '~> 1.0.0'
当我对Podfile进行重大更改时,我遇到了类似的问题。我的解决方案是删除工作区文件并再次运行pod install
:
rm -rf MyProject.xcworkspace
pod install
有同样的问题说/Pods/Pods-resources.sh:即使在删除了与pod相关的文件等之后,也没有这样的文件或目录。
通过转到target-> Build阶段然后删除构建阶段“Copy Pod Resources”来摆脱它。
我最近遇到了同样的问题。我已经尝试了所有可能的建议,除了这个插件对我有用之外什么都没有:
https://github.com/kylef/cocoapods-deintegrate
在清理了当前的cocoapods集成之后,剩下要删除的是Podfile,Podfile.lock和.xcworkspace。然后再安装一遍。
我希望我会帮助这个人。
我认为这里有一个错误。
对我来说,我删除Pods
文件夹和Podfile.lock
并再次做pod install
来解决问题。
此消息忽略.. :(
这不是很直观。我去了基础项目设置,然后我在Check Pods Manifest.lock下硬编码到pod.lock和pod.manifest的路径,因为它们实际上保留在不同的文件夹中,所以我的路径看起来像这样:
diff "/Users/admin/Desktop/Experimental/projectfolder/Podfile.lock" "/Users/admin/Desktop/Experimental/projectfolder/Pods/Manifest.lock" > /dev/null
if [[ $? != 0 ]] ; then
cat << EOM
error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.
EOM
exit 1
fi
您可以尝试以下方法。它适合我。
插件将从您的项目的cocoapods中删除,并将安装新的。
在我的情况下,这是一个测试目标,我从我的podfile中删除了所有的pod(因为我添加了pods,我后来意识到我在该目标中不需要)。这里没有其他解决方案适合我。
这让我很快乐!
pod install
在我的情况下,问题是错误的。解决方案在这里http://guides.cocoapods.org/using/troubleshooting.html
如果某些内容似乎不起作用,首先要确保您没有完全覆盖项目构建设置中Pods.xcconfig文件中设置的任何选项。要从项目的构建设置中为选项添加值,请在值列表前加上$(inherited)。
我有这个问题。
我修复它的方法是完全删除Pod实现并重新实现它。确保在所有目标上的“Build Phases”中删除“Copy Pods Resources”和“Check Pods Manifest.lock”,如下所示:How to remove CocoaPods from a project?
TLDR:这很可能是Xcode的一个错误,关闭和重新打开项目通常是最简单的修复。假设其他一切都是configured properly。
我偶尔会在删除Pods
目录然后运行pod install
时遇到同样的错误。
项目信息中的所有内容都显示正确:
但是,当我转到目标的用户定义的构建设置时,PODS_ROOT条目要么完全丢失,要么对于一个或多个配置为空。这导致构建时出现以下错误:
最简单的解决方法是在Xcode中关闭项目并重新打开它。
如果你转到目标的Build Settings并在All上过滤,你现在将看到没有错误的PODS_ROOT
条目:
它现在应该构建没有错误。
注意:即使Cocoa Pods的官方AFNetworking iOS示例也有这个问题,这让我相信这是Xcode的一个错误。
另一种方法是手动将配置更改为None
,然后再返回其原始值:
为了摆脱这个错误,我需要删除Pods
目录并删除Podfile.lock
文件。
在我的情况下,我确实将Podfile.lock和Manifest.lock放在源代码管理中,但我忘了将Pods-Project.debug(release).xcconfig文件添加到源代码控制中(错误地将* .xcconfig添加到.gitignore),然后我由于完全相同的原因得到了相同的编译错误,PODS_ROOT没有被设置。
因此,如果目标是克隆回购后,项目可以立即构建和运行,而无需在机器上安装CocoaPods,您可以在源代码管理中添加整个Pods目录,也可以添加Podfile.lock,Manifest.lock,项目的xcconfig文件和将xcconfig文件发送到源代码控制。
我没有把构建设置与默认CocoaPods配置合并到源控件的private .xcconfig。
在我使用pod之前,我创建了多个目标。后来当我开始编译其他目标时,我不得不在我的Podfile中添加link_with和目标列表。
如果你有一个watchOS目标:我发现突然间,在手表扩展中但是没有在监视目标中的pod本身也会出现同样的错误。解决方案是将吊舱添加到手表目标。
如果您在创建Podfile后添加了新目标,只需删除Podfile,Podfile.lock,Pods文件夹和工作区,然后执行init pods - >然后将您的pods pod安装
尝试上述后,我意识到我在pod install
上收到错误
[!] CocoaPods没有设置项目的基本配置,因为您的项目已经有自定义配置集。
这导致了错误,因为cocoapods没有将.xcconfig文件添加到我的项目中。
为了解决这个问题,我去了我项目的Info
标签。将我的基于配置文件设置为None
以用于所有方案和目标。然后重新跑了pod install
我的IONIC项目遇到了同样的问题,我尝试了所有解决方案,但没有运气。
如果您仍然遇到同样的问题,请检查以下天气设置是否存在于Build Settings -> User-Defined settings
中
1.PODS_ROOT
2.PODS_PODFILE_DIR_PATH
如果不存在则添加,
PODS_ROOT = ${SRCROOT}/Pods
PODS_PODFILE_DIR_PATH = ${SRCROOT}/
它将解决问题,解决link
转到目标的Build Settings
并确保PODS_ROOT
的值等于“用户定义”部分中的${SRCROOT}/Pods
。
在我的情况下,我不小心在配置文件的末尾键入了一个不必要的点,这导致了这个奇怪的问题。请确保您的配置文件不包含任何错误!
更新:podfile.lock
是必需的,版本控制不应忽略它,它会跟踪在某个pod安装时安装的库的版本。 (它分别类似于gemfile.lock和composer.lock用于rails和php依赖管理)。要了解更多信息,请阅读docs。归功于cbowns。
在我的情况下,我做的是我正在为我的项目做一些房屋清理(即将集成测试作为git子模块进行分支......删除重复文件等)..并将最终结果推送到git远程仓库。所有克隆我的回购的客户都遭受了上述错误。受上面Hlung's评论的启发,我意识到有一些悬空的pod脚本试图对一些不存在的文件运行。所以我进入了我的目标构建阶段,并删除了所有与可可豆荚有关的剩余阶段(Hlung的评论他建议删除Copy Pods Manifest.lock
和copy pod resources
..我的名字不同,也许b / c我正在使用Xcode 5。重点是删除那些悬空构建阶段)
所以似乎CocoaPods没有为我的项目设置配置。它们需要基于Pods.xcconfig
中的Pods/Target Support Files/Pods
。要实现这一点,我必须执行以下操作:
然后我有另一个构建错误,可能有也可能没有关联。 Copy Pods Resources
中定义的shell脚本的路径不正确。
"${SRCROOT}/Pods/Pods-resources.sh"
解决不正确。似乎SRCROOT正在添加一条不存在于路径中的额外目录。所以我硬编码了Project文件夹的路径。
这让我可以建立。
为什么这么多可以节省你时间的东西最终会吃掉它?
注意:请参阅@ abood的答案进行解释。
我有一个类似的问题,这是有效的:
我通过以下步骤摆脱了同样的问题:
Xcode->Product->Clean Build Folder
(在产品上按住alt键看看)Xcode->Window->Organizer
并选择Projects
标签。然后找到你的项目并删除项目的derived data
。通过执行以下操作简单地解决:
似乎问题是由我们的一个团队成员有一个更近期的cocoapods gem安装引起的。