Xcode 10.2 更新问题 构建系统错误-1:无法加载文件列表的内容:输入/输出xcfilelist。

143

升级到Xcode 10.2后,我遇到了两个错误

:-1: 无法加载文件列表的内容:'xxxxx/Pods/Target Support Files/Pods-xxxx/Pods-xxxxx-frameworks-Debug-input-files.xcfilelist' (在目标“xxxxx”中)

:-1: 无法加载文件列表的内容:'xxxxx/Pods/Target Support Files/Pods-xxxxx/Pods-xxxxx-frameworks-Debug-output-files.xcfilelist' (在目标“xxxxx”中)

我已更新所有Pod并将构建系统更改为 "Legacy Build System",但仍然遇到相同的构建错误


3
这对我来说也是绝对关键的。有任何更新吗? - Bonnke
1
如果这是一个旧项目,请尝试从“文件”->“工作区设置”中更改构建系统为Legacy。 - Subhash
删除 Podfile.lock 文件,然后运行命令 pod install。 - Jaykant
26个回答

156

我今天花了几个小时也终于解决了这个问题:

  1. sudo gem update cocoapods --pre
  2. pod update
  3. 清理(clean)
  4. 构建(build)

根据我所了解的,这是Xcode 10.2中默认启用的新构建过程导致的问题,虽然我还没有发现有什么明确记录的解决方法。可能会有比我描述的更优雅的解决方案。


2
Cocoapods 1.7已更改为Xcode新的构建系统。 - mkhoshpour
4
我遇到了这个问题,针对我的本地机器那个解决方案有效,但是在CI构建系统上仍然出现了这个问题,你有什么想法吗? - Ziv Kesten
8
运行上述命令后,我得到了以下结果: '更新已安装的gems' '没有需要更新的内容' - Abdullah Khan
我该如何在CI系统中解决这个问题?Azure管道。 - M Karimi
1
在我的情况下,问题与传递给“xcodebuild”命令的配置有关,它覆盖了方案中提供的配置。要么删除它,要么尝试匹配有效的配置。 - Shaz

106
  1. 删除 'Pods/', 'Podfile.lock', 'yourappname.xcworkspace'
  2. pod deintegrate
  3. pod install

这对我有用。

我每次都会遇到这个问题,使用上述方法可以解决,但我不知道原因是什么,如何完全解决?


3
尝试了上面所有的方法,但只有这个解决方案有效。谢谢@symbool。 - Shubham Ojha
我认为关键是删除Podfile.lock文件。 - alizx
1
看起来如果您已经添加了新的配置,执行上述操作将会为每个配置添加所需的匹配输入和输出文件。 - Mario
1
这对我有用。只需使用pod deintegrate和pod install命令即可。在创建多个方案/环境后,我遇到了错误。 - cherucole
1
我在Xcode中的Flutter应用程序中遇到了这个问题。我需要从我的项目的IOS根目录运行pod命令吗? - Powermaster Prime
显示剩余2条评论

61

以下是@nfranzmeier的答案示例:

进入您的项目:

  • 选择正确的目标
  • 构建阶段
  • 展开[CP] Embed Pods Frameworks脚本阶段
  • 通过选择每个文件并单击-按钮,删除Input Files ListsOutput Files Lists部分下的文件

完成!

Input/Output Files Lists sections


2
帮助了,这就是实际的解决方案。 - Raheel Sadiq
18
在 Xcode 11.4 上尝试过这个,Xcode 报错 "error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation." 运行 'pod install' 只会把两个文件列表恢复到原来的位置。 - CodeBrew
尝试在Xcode 12.4上运行此代码。 差异:/Podfile.lock:没有这样的文件或目录 差异:/Manifest.lock:没有这样的文件或目录 沙盒与Podfile.lock不同步。运行“pod install”或更新您的CocoaPods安装。 - HarrisHan
1
这在我的XCode 12.5上有效。同时我移除了[CP] Copy Pods Resources。 - hernan
尝试了已接受的解决方案后,我没有运气,这是对我有效的方法。 - wisenickel
显示剩余3条评论

31

以上的解决方案都对我无效。成功的方法是:

  1. 进入Xcode > 项目 > 信息 > 配置

  2. 为Debug > Pods-XXX.debug和Release = Pods-XXX.release设置值

这个解决方法对我在Xcode 12.0 beta上遇到的问题有效。


这帮助了我 - 我的项目将“Release”重命名为“Release-External”。 - abjurato
这是唯一一个对我有用的,谢谢 :)。 - moji
这是此问题的实际解决方案,感谢 @soCohesive。 - Jorge Vicente Mendoza
我花了几个小时来解决这个问题,这也是唯一有效的方法!!谢谢!! - Giulia Lage
谢谢,这是唯一一个对我有效的。 - Alessio
我只是想告诉你,你又一次救了我。我发现这个答案时意识到我过去曾经点赞过它,但我却不记得其中的任何内容。但现在它再次解决了我的问题。我真的很开心。 - undefined

20
这对我很有用:

cd ios && pod deintegrate

pod install

然后重新运行你的项目


18

只需执行pod install即可解决此问题。

您不一定需要更新您的pod(特别是如果您没有明确锁定版本)。我们在创建新的Scheme后遇到了这个错误。


@Mehrdad __ __ - Geri Borbás

13

这解决了我的问题:

Open **Terminal**
1) run -> pod deintegrate
2) run -> pod install

In **Xcode**
3) Click Product Menu
4) Keep Pressing Option Button
5) Click Clean Build Folder
6) Run

11
我已经更改了运行配置,从DebugDEV,但是没有更改方案:

在左上角选择您的项目名称,旁边是您的设备:

enter image description here

然后,选择您的项目并单击“编辑”。

enter image description here

最后,将Debug更改为您想要的“运行配置”,在我的情况下是DEV:

enter image description here

对于左侧列表中的每一个,都这样做,但对于Profile,将其保留为Release或相应的版本:

enter image description here


7

这对我来说是由于我为不同环境设置了自定义配置(.xcconfig)文件所致。我没有将 Pods/Target Support Files/Pods-XXXXXX/Pods-XXXXXX.release.xcconfig 导入到我的配置文件中。

这篇指南帮助我找到了缺失的步骤。https://thoughtbot.com/blog/let-s-setup-your-ios-environments

感谢Patrick。


谢谢,我有同样的问题,只是不同的变体。但是到达这一点非常困难。现在正在尝试这个解决方案。 - jasxir
如果您知道的话,请告诉我是否可以在#include中添加动态值,以便可以在调试和发布时使用相同的文件。谢谢。 - jasxir

7

您可以编辑xxxx.xcodeproj/project.pbxproj文件,从inputFileListPaths()和outputFileListPaths()中删除有问题的行xxxinput-files.xcfilelist和xxxoutput-files.xcfilelist,使它们再次为空,然后保存并重新构建即可。


2
我不得不使用外部编辑器打开文件并搜索它,因为在XCode中它没有出现。也许问题是我在不同的项目中使用XCode 10和11,可能我用错误的版本打开了冲突的项目。 - BuguiBu

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接