@aws-amplify/react-native依赖致React Native iOS编译失败求助
React Native + AWS Amplify Push Notification iOS编译失败问题
我有个React Native应用,之前用AWS Amplify的Cognito做认证完全正常。但按照官方文档配置推送通知,添加@aws-amplify/react-native依赖后,iOS编译运行失败,报错日志如下:
- Building the app. info 💡 Tip: Make sure that you have set up your development environment correctly, by running react-native doctor. To read more about doctor command visit: https://github.com/react-native-community/cli/blob/main/packages/cli-doctor/README.md#doctor node:internal/process/promises:289 triggerUncaughtException(err, true /* fromPromise */); ^ [Command line invocation: /Applications/Xcode.app/Contents/Developer/usr/bin/xcodebuild -workspace GlobeThrivers.xcworkspace -configuration Debug -scheme GlobeThrivers -destination id=E49400FA-5645-4B20-BC5A-48B1D68606E4 User defaults from command line: IDEPackageSupportUseBuiltinSCM = YES Prepare packages ComputeTargetDependencyGraph note: Building targets in dependency order note: Target dependency graph (83 targets) Target 'GlobeThrivers' in project 'GlobeThrivers' ➜ Implicit dependency on target 'Pods-GlobeThrivers' in project 'Pods' via file 'libPods-GlobeThrivers.a' in build phase 'Link Binary' ➜ Implicit dependency on target 'AmplifyRTNCore' in project 'Pods' via options '-lAmplifyRTNCore' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'AmplifyRTNPushNotification' in project 'Pods' via options '-lAmplifyRTNPushNotification' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'AmplifyUtilsNotifications' in project 'Pods' via options '-lAmplifyUtilsNotifications' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'CocoaAsyncSocket' in project 'Pods' via options '-lCocoaAsyncSocket' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'DoubleConversion' in project 'Pods' via options '-lDoubleConversion' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'Flipper' in project 'Pods' via options '-lFlipper' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'Flipper-Boost-iOSX' in project 'Pods' via options '-lFlipper-Boost-iOSX' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'Flipper-Fmt' in project 'Pods' via options '-lFlipper-Fmt' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'Flipper-Folly' in project 'Pods' via options '-lFlipper-Folly' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'Flipper-PeerTalk' in project 'Pods' via options '-lFlipper-PeerTalk' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'FlipperKit' in project 'Pods' via options '-lFlipperKit' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'Mixpanel-swift' in project 'Pods' via options '-lMixpanel-swift' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'MixpanelReactNative' in project 'Pods' via options '-lMixpanelReactNative' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'RCT-Folly' in project 'Pods' via options '-lRCT-Folly' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'RCTTypeSafety' in project 'Pods' via options '-lRCTTypeSafety' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'RNAWSCognito' in project 'Pods' via options '-lRNAWSCognito' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'RNCAsyncStorage' in project 'Pods' via options '-lRNCAsyncStorage' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'RNCMaskedView' in project 'Pods' via options '-lRNCMaskedView' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'RNCPicker' in project 'Pods' via options '-lRNCPicker' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'RNFastImage' in project 'Pods' via options '-lRNFastImage' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'RNGestureHandler' in project 'Pods' via options '-lRNGestureHandler' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'RNKeychain' in project 'Pods' via options '-lRNKeychain' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'RNReanimated' in project 'Pods' via options '-lRNReanimated' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'RNSVG' in project 'Pods' via options '-lRNSVG' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'RNScreens' in project 'Pods' via options '-lRNScreens' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-Codegen' in project 'Pods' via options '-lReact-Codegen' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-Core' in project 'Pods' via options '-lReact-Core' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-CoreModules' in project 'Pods' via options '-lReact-CoreModules' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-NativeModulesApple' in project 'Pods' via options '-lReact-NativeModulesApple' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-RCTAnimation' in project 'Pods' via options '-lReact-RCTAnimation' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-RCTAppDelegate' in project 'Pods' via options '-lReact-RCTAppDelegate' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-RCTBlob' in project 'Pods' via options '-lReact-RCTBlob' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-RCTImage' in project 'Pods' via options '-lReact-RCTImage' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-RCTLinking' in project 'Pods' via options '-lReact-RCTLinking' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-RCTNetwork' in project 'Pods' via options '-lReact-RCTNetwork' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-RCTSettings' in project 'Pods' via options '-lReact-RCTSettings' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-RCTText' in project 'Pods' via options '-lReact-RCTText' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-RCTVibration' in project 'Pods' via options '-lReact-RCTVibration' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-cxxreact' in project 'Pods' via options '-lReact-cxxreact' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-debug' in project 'Pods' via options '-lReact-debug' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-hermes' in project 'Pods' via options '-lReact-hermes' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-jsi' in project 'Pods' via options '-lReact-jsi' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-jsiexecutor' in project 'Pods' via options '-lReact-jsiexecutor' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-jsinspector' in project 'Pods' via options '-lReact-jsinspector' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-logger' in project 'Pods' via options '-lReact-logger' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-perflogger' in project 'Pods' via options '-lReact-perflogger' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-runtimescheduler' in project 'Pods' via options '-lReact-runtimescheduler' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-utils' in project 'Pods' via options '-lReact-utils' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'ReactCommon' in project 'Pods' via options '-lReactCommon' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'ReactNativeUiLib' in project 'Pods' via options '-lReactNativeUiLib' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'SDWebImage' in project 'Pods' via options '-lSDWebImage' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'SDWebImageWebPCoder' in project 'Pods' via options '-lSDWebImageWebPCoder' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'SocketRocket' in project 'Pods' v [error] npm run ios_large Failed [error] ios_large Failed.
解决思路
- 检查依赖版本兼容性:
@aws-amplify/react-native需要和React Native版本、其他Amplify依赖(如aws-amplify)版本匹配,确保所有相关依赖版本对齐。 - 清理Pods缓存:删除
ios/Pods目录、ios/Podfile.lock,重新执行pod install或npx pod-install,确保Pods安装完整。 - 检查Xcode配置:打开Xcode项目工作区,确认
AmplifyRTNPushNotification等相关Pods已正确引入,Build Phases的Link Binary With Libraries包含这些库;同时检查项目iOS Deployment Target是否与Amplify Pods要求一致(部分组件要求iOS 13+)。 - 排除Flipper冲突:暂时注释Podfile里的Flipper相关配置,重新安装Pods后编译,排查是否存在冲突。
- 查看完整Xcode错误日志:当前日志被截断,直接用Xcode打开项目编译,获取详细错误信息(如编译错误、符号缺失等),这是定位问题的关键。
- 执行
react-native doctor:按照提示修复环境中缺失的依赖或配置问题,确保iOS开发环境符合要求。 - 重新安装npm依赖:删除
node_modules、package-lock.json,执行npm install后重新编译。
内容的提问来源于stack exchange,提问作者Josh Knowles
相关产品推荐
相关产品推荐

