我有一个使用CocoaPods的iOS项目。一切都很顺利,直到另一个开发人员开始在同一个项目上工作。他做了一些更改(据我所知只是对代码进行了更改),并在回购中创建了一个新的分支。我已经检查了他的分支,并试图构建它,但我得到一个错误:ASLogger/ASLogger.h文件未找到。
即使我删除了整个项目,重新复制并使用“pods install .”,构建失败仍然存在。你知道问题出在哪里吗?如果你需要更多的信息,尽管问。
我有一个使用CocoaPods的iOS项目。一切都很顺利,直到另一个开发人员开始在同一个项目上工作。他做了一些更改(据我所知只是对代码进行了更改),并在回购中创建了一个新的分支。我已经检查了他的分支,并试图构建它,但我得到一个错误:ASLogger/ASLogger.h文件未找到。
即使我删除了整个项目,重新复制并使用“pods install .”,构建失败仍然存在。你知道问题出在哪里吗?如果你需要更多的信息,尽管问。
当前回答
对我来说,修复它的是我的Pods项目的iOS部署目标低于我的项目本身。一旦我使它与我的项目相同,它就能够找到头文件。
其他回答
我也遇到了同样的问题,但是上面的解决方法都行不通。 我通过这样做来修复它:
删除整个项目 运行git克隆项目,然后运行bundle exec pod install CD项目并运行remote- add upstream your-remote-rep-add Git上游获取 Git checkout master Git合并upstream/master
然后就成功了。
维基给出了如何解决这个问题的建议:
如果Xcode找不到依赖项的头文件: 检查pod头文件是否在Pods/Headers中被正确地符号链接 并且您没有覆盖HEADER_SEARCH_PATHS(参见#1)。如果Xcode 还是找不到他们,作为最后的手段,你可以提前进口, 例如,#导入“Pods/ ssziparchvee .h”。
我将在我的构建设置中更新以下内容,我没有得到任何错误。要检查这些东西,同时更新你的cocoapods。
建立设置
启用位码- YES(如果你正在使用位码) 宏预处理器- $(继承) 其他链接标志- objc, -lc++, $(继承)
只构建体系结构
调试-是 放松-不
搜索路径
框架搜索路径$(继承)$(PROJECT_DIR) 库搜索路径- $(继承) 标题搜索路径- $(继承)
我发现将库作为pod安装直接帮助动态库。例如,对于Firebase:
pod 'RNFirebase', :path => 'path/to/node_modules/react-native-firebase/ios'
或ASLogger:
pod 'ASLogger', :path => 'path/to/node_modules/aslogger/ios' // path to header files
更改或硬编码HEADER_SEARCH_PATHS并没有帮助我。如果错误再次出现,不需要rm -rf node_modules,也不需要删除pod文件等,我发现清除缓存很有用。
对于react-native,我运行
rm -rf $TMPDIR/react-native-packager-cache-*
rm -rf $TMPDIR/metro-bundler-cache-*
rm -rf $TMPDIR/metro-*
rm -rf $TMPDIR/react-*
rm -rf $TMPDIR/haste-*
rm -rf "$(getconf DARWIN_USER_CACHE_DIR)/org.llvm.clang/ModuleCache"
npm start -- --reset-cache
对于Xcode,我删除~/Library/Developer/Xcode/DerivedData中的文件夹
对我来说,问题是在其他链接标志值。出于某种原因,我在像-l“xml2”-l“Pods-MBProgressHUD”这样的标志中没有引号。