Running Expo after Ejecting -> Error Invariant Violation: "main" has not been registered.

Hey all!

After ejecting my Expo app and trying to start it back up again with expo start, I’m getting the below error.

Here’s the error from the terminal:

Invariant Violation: Native module cannot be null.
- node_modules/react-native/Libraries/LogBox/LogBox.js:148:8 in registerError
- node_modules/react-native/Libraries/LogBox/LogBox.js:59:8 in errorImpl
- node_modules/react-native/Libraries/LogBox/LogBox.js:33:4 in console.error
- node_modules/expo/build/environment/react-native-logs.fx.js:27:4 in error
- node_modules/react-native/Libraries/Core/ExceptionsManager.js:104:6 in reportException
- node_modules/react-native/Libraries/Core/ExceptionsManager.js:171:19 in handleException
- node_modules/react-native/Libraries/Core/setUpErrorHandling.js:24:6 in handleError
- node_modules/expo-error-recovery/build/ErrorRecovery.fx.js:9:32 in ErrorUtils.setGlobalHandler$argument_0
- node_modules/regenerator-runtime/runtime.js:63:36 in tryCatch
- node_modules/regenerator-runtime/runtime.js:293:29 in invoke
- node_modules/regenerator-runtime/runtime.js:63:36 in tryCatch
- node_modules/regenerator-runtime/runtime.js:154:27 in invoke
- node_modules/regenerator-runtime/runtime.js:164:18 in PromiseImpl.resolve.then$argument_0
- node_modules/react-native/node_modules/promise/setimmediate/core.js:37:13 in tryCallOne
- node_modules/react-native/node_modules/promise/setimmediate/core.js:123:24 in setImmediate$argument_0
- node_modules/react-native/Libraries/Core/Timers/JSTimers.js:130:14 in _callTimer
- node_modules/react-native/Libraries/Core/Timers/JSTimers.js:181:14 in _callImmediatesPass
- node_modules/react-native/Libraries/Core/Timers/JSTimers.js:441:30 in callImmediates
- node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:387:6 in __callImmediates
- node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:135:6 in __guard$argument_0
- node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:364:10 in __guard
- node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:134:4 in flushedQueue
* [native code]:null in flushedQueue
* [native code]:null in invokeCallbackAndReturnFlushedQueue

Here are the current versions of my software:

  • Expo SDK = 40
  • Expo-cli = 4.0.17
  • Node = 7.0.0

After searching through StackOverflow and GitHub, there were suggestions to help remedy the issue. Here are the suggestions that I tried:

  1. rm -rf node_modules
  2. npm install -g expo-cli
  3. npm install
  4. expo r -c

Unfortunately, it’s still not getting the project up. I’d kindly appreciate any help in debugging this issue and getting the project back up and running again. Thanks in advance! :slight_smile:

Hey @ismaelbarry, these two doc pages should be of value to you:


Hi Adam, thank you for helping–I really appreciate it. Unfortunately, I still wasn’t able to pinpoint the issue using the resources you’ve provided.

I’ve decided to revert back to my previous commits before ejecting and will restart the ejecting process again. I’ll update the thread if there are any issues.