参数列表太长:递归头扩展失败

Posted

技术标签:

【中文标题】参数列表太长:递归头扩展失败【英文标题】:Argument list too long: recursive header expansion failed 【发布时间】:2018-03-16 10:13:08 【问题描述】:

我有一个 React Native 应用程序,确实编译得非常好。

安装react-native-sentry并通过react-native link自动链接后,我遇到了这个问题:

Showing Recent Issues
Argument list too long: recursive header expansion failed at /Users/dan/Sites/app/node_modules/react-native-intercom/ios/../../../ios/Pods/React/node_modules/exit-hook.

这个错误发生在我运行pod install之后

Podfile

# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'

target 'app' do
  # Uncomment the next line if you're using Swift or would like to use dynamic frameworks
  # use_frameworks!

  # Pods for app
  pod 'AppCenterReactNativeShared', '~> 1.4.0'
  pod 'SentryReactNative', :path => '../node_modules/react-native-sentry'

  platform :ios, '9.0'

  target 'appTests' do
    inherit! :search_paths
    # Pods for testing
  end

end

target 'app-tvOS' do
  # Uncomment the next line if you're using Swift or would like to use dynamic frameworks
  # use_frameworks!

  # Pods for app-tvOS

  target 'app-tvOSTests' do
    inherit! :search_paths
    # Pods for testing
  end

end

我根本没有修改RNIntercom项目,这个问题总是在我尝试通过cocoa安装新库后出现。

【问题讨论】:

我认为这个链接会帮助你github.com/tinycreative/react-native-intercom/issues/40 谢谢,我试试看结果告诉你 @NisargThakkar 不幸的是,它没有用,我没有使用 cocoapods 进行对讲。我已将其嵌入为框架。我尝试了SRCROOT 答案,但也没有用。 问题不是库特有的,它在 Intercom 和 AppCenterReactNative 之间切换 pod install 会覆盖一些可能在 gitignore 中的文件,所以它不会起作用,即使你还原每一个更改,你也会遇到问题。最近我在实现 codepush 时遇到了类似的问题。我不得不重置所有内容并返回并手动链接 codepush。 【参考方案1】:

我遇到了类似的问题,不得不进入并删除一些标题搜索路径,如下所述:

https://facebook.github.io/react-native/docs/0.60/troubleshooting#argument-list-too-long-recursive-header-expansion-failed

参数列表太长:递归头扩展失败

在 项目的构建设置,用户搜索标题路径和标题搜索 路径是两个配置,指定 Xcode 应该在哪里查找 #import 代码中指定的头文件。对于 Pod,CocoaPods 使用默认的 要查看的特定文件夹数组。验证这个特定的 config 没有被覆盖,并且没有配置的文件夹 太大了。如果其中一个文件夹是大文件夹,Xcode 将尝试 递归搜索整个目录并在 一点。

还原用户搜索标题路径和标题搜索路径构建 设置为 CocoaPods 设置的默认值 - 选择 构建设置面板,然后点击删除。它将删除自定义 覆盖并返回 CocoaPod 默认值。

【讨论】:

以上是关于参数列表太长:递归头扩展失败的主要内容,如果未能解决你的问题,请参考以下文章

Maven 发布分支失败,错误=7,参数列表太长

递归函数和列表追加/扩展

在链表中递归插入节点,给定位置和值

在递归函数参数中修改列表时会发生啥

“递归索引在级别 4 失败”R 代码

为啥将迭代器作为参数传递并在尾部位置递归时后缀失败并且前缀工作正常? [复制]