react-native 0.40+ file not found

由于某个产品特性的实现需要将react-native从0.35.0升级到0.40+,结果遇到了一堆问题,当时又处于项目紧张的开发周期中,简直要了亲命,顿时感觉自己不会写代码了!

原因

react-native 0.40做了一个大的破坏性改动,RN的头文件声明指向了$(BUILT_PRODUCTS_DIR)/include/React。

This means that all iOS native libraries need a major version bump for RN 0.40. We attempt to minimize changes of this magnitude, and we apologize for any inconvenience caused.

解决方法

  1. 在Xcode中,进入项目的Edit Scheme...对话框(Product -> Scheme -> Edit Scheme...)
  2. 选择左边栏的Build
  3. 取消选中Parallelize Build
  4. 添加ReactTargets中,并拖动到第一个。
  5. #import "RCT*.h" 改为 #import
  6. Clean, Build.
react-native 0.40+ file not found_第1张图片
D5C60C0B-ED33-45F8-BB2B-FBE5A35AD6C4.png

补充

Duplicate interface definition for class 'RCTBridge'

解决上面的"file not found"问题之后,可能还会遇到这个问题,解决方法是:
移除所有第三方库header search path中的react-native引用. (手动改之前,先检查一下所用的第三方库是否已经支持0.40+了)

你可能感兴趣的:(react-native 0.40+ file not found)