升级Xcode 10后React Native项目报错

前言

既然是Xcode升级导致的RN项目问题,这里我就先列出我的使用环境。

MacOS Mojave Version 10.14.2
Xcode: Version 10.1
react-native": "0.54.3
react": "16.3.0-alpha.1

为了对比找错新建的项目也同样的版本和环境

错误修改记录

1. 'React/RCTEventEmitter.h' file not found

报错如下
升级Xcode 10后React Native项目报错_第1张图片
'React/RCTEventEmitter.h' file not found
解决方法

之前扒拉网上的一种说法是关于React/RCT。。。.h文件找不到的话,就要先选择React进行clean,然后编译,最后再回到本身项目中运行,这种方法我尝试了,确实很有用,但是当打包上传的时候就出现问题了,总是编译不过,经过多方查找资料以及自己重新创建RN项目进行对比分析,得出了以下的解决方法(图文结合说了,纯文字忒难表述了,从上到下依次来就行了):

升级Xcode 10后React Native项目报错_第2张图片
1. 打开Product

点击Product的时候要确定当前是在本身项目中,而不是在引入的项目中,如果是在本身项目中,就点击Edit Scheme...,否则的话点击Manage Schemes...,然后双击本身项目,同样能到达图3所示图中。

升级Xcode 10后React Native项目报错_第3张图片
2. 点击 Edit Scheme...
升级Xcode 10后React Native项目报错_第4张图片
3. Run tab
升级Xcode 10后React Native项目报错_第5张图片
4. Build tab, uncheck Parallelize Build and add React

到这里设置就完成了,然后再编译运行即可(一般情况下就碰到下面的报错了)

2. 'React/RCTEventEmitter.h' file not found

报错如下
升级Xcode 10后React Native项目报错_第6张图片
double-conversion Error

如果报错是关于tirid-party 'config.h' file not found也同样是以下的解决方法

解决方法
  1. 打开终端,进入项目根目录下,执行以下命令:

cd node_modules/react-native/third-party/glog-0.3.4

  1. 继续执行以下命令:

../../scripts/ios-configure-glog.sh

通过上面两个步骤即可解决此问题(前提是命令执行成功)

3. RCTHttpCache报错 Redefinition of 'RCTMethodInfo'

报错如下
升级Xcode 10后React Native项目报错_第7张图片
RCTHttpCache报错

上面的只是部分截图,总之错误多达16个

解决方法
升级Xcode 10后React Native项目报错_第8张图片
解决方案

4. WebSocket/libfishhook.a file cannot be found

报错如下
升级Xcode 10后React Native项目报错_第9张图片
WebSocket/libfishhook.a file cannot be found
解决方法
升级Xcode 10后React Native项目报错_第10张图片
解决方法

后话

这两天因为Xcode升级修改问题碰到的问题不仅仅只有上面提到的几个,但是有些问题以及解决方案我也给忘了(从git上拉下来的存档使用以上几个方法就解决了,可能之前碰到的问题没有用到对的解决方法罢了),这里仅仅就本次Xcode升级碰到的几个经典问题的一个记录,以便能够帮助更多的人,也为了我这个记性不好的人

你可能感兴趣的:(升级Xcode 10后React Native项目报错)