This happened a couple of days ago and it magically fixed itself after several hours.
It happened again today after I restarted my Mac whilst the simulator was running.
Basically I can build my project but whenever I connect to it I get this error and am unable to launch my app
None of these files exist:
* node_modules/expo-router/entry(.native|.ios.ts|.native.ts|.ts|.ios.tsx|.native.tsx|.tsx|.ios.js|.native.js|.js|.ios.jsx|.native.jsx|.jsx|.ios.json|.native.json|.json|.ios.cjs|.native.cjs|.cjs|.ios.scss|.native.scss|.scss|.ios.sass|.native.sass|.sass|.ios.css|.native.css|.css|.ios.mjs|.native.mjs|.mjs)
* node_modules/expo-router/entry/index(.native|.ios.ts|.native.ts|.ts|.ios.tsx|.native.tsx|.tsx|.ios.js|.native.js|.js|.ios.jsx|.native.jsx|.jsx|.ios.json|.native.json|.json|.ios.cjs|.native.cjs|.cjs|.ios.scss|.native.scss|.scss|.ios.sass|.native.sass|.sass|.ios.css|.native.css|.css|.ios.mjs|.native.mjs|.mjs)
at ModuleResolver.resolveDependency (/Users/***/Sites/***/node_modules/metro/src/node-haste/DependencyGraph/ModuleResolution.js:114:15)
at DependencyGraph.resolveDependency (/Users/****/Sites/***/node_modules/metro/src/node-haste/DependencyGraph.js:277:43)
at /Users/****/Sites/***/node_modules/metro/src/lib/transformHelpers.js:169:21
at Server._resolveRelativePath (/Users/***/Sites/***/node_modules/metro/src/Server.js:1045:12)
at async Server.requestProcessor [as _processBundleRequest] (/Users/***/Sites/***/node_modules/metro/src/Server.js:449:37)
at async Server._processRequest (/Users/***/Sites/***/node_modules/metro/src/Server.js:383:7)
My App.json
{
"expo": {
"scheme": "***",
"userInterfaceStyle": "automatic",
"splash": {
"backgroundColor": "#ddffe2",
"image": "./assets/icon.jpg",
"resizeMode": "contain"
},
"icon": "./assets/icon.jpg",
"name": "***",
"slug": "***",
"assetBundlePatterns" : [
"**/*"
],
"web": {
"bundler": "metro"
},
"plugins": [
[
"expo-image-picker",
{
"photosPermission": "The app accesses your photos to let you share them with your friends."
}
],
"@react-native-firebase/app",
[
"expo-build-properties",
{
"ios": {
"useFrameworks": "static",
"deploymentTarget": "13.0"
}
}
]
],
"ios": {
"bundleIdentifier": "app.***.***",
"googleServicesFile": "./GoogleService-Info.plist",
"runtimeVersion": {
"policy": "appVersion"
}
},
"android": {
"permissions": [
"android.permission.RECORD_AUDIO"
],
"package": "app.***.***",
"googleServicesFile": "./google-services.json",
"runtimeVersion": "1.0.0"
},
"extra": {
"eas": {
"projectId": "****"
}
},
"updates": {
"url": "https://u.expo.dev/*****"
}
},
"web": {
"bundler": "metro"
}
}
My Package.json
{
"name": "***",
"version": "1.0.0",
"main": "expo-router/entry",
"scripts": {
"start": "expo start",
"android": "expo run:android",
"ios": "expo run:ios",
"web": "expo run:web",
"upgrade:tamagui": "$npm_execpath up '*tamagui*' '@tamagui/*'",
"predeploy": "expo export -p web",
"deploy-hosting": "npm run predeploy && firebase deploy --only hosting:***",
"storybook-generate": "sb-rn-get-stories",
"storybook-watch": "sb-rn-watcher",
"test": "node --experimental-vm-modules node_modules/jest/bin/jest.js"
},
"jest": {
"extensionsToTreatAsEsm": [
".ts"
],
"globals": {
"__DEV__": true
},
"projects": [
{
"displayName": "web",
"preset": "jest-expo/web",
"testEnvironment": "jsdom",
"testMatch": [
"**/__tests__/web/**/*.tsx"
],
"moduleFileExtensions": [
"web.tsx",
"web.js",
"ts",
"tsx",
"js",
"jsx",
"json",
"node"
],
"setupFilesAfterEnv": [
"./jest.setup.web.ts"
]
},
{
"displayName": "native",
"preset": "jest-expo",
"testEnvironment": "jest-environment-node",
"testMatch": [
"**/__tests__/native/**/*.tsx"
],
"moduleFileExtensions": [
"ts",
"tsx",
"js",
"jsx",
"json",
"node"
],
"setupFilesAfterEnv": [
"./jest.setup.ts"
]
}
],
"transformIgnorePatterns": [
"node_modules/(?!((jest-)?react-native|@react-native(-community)?)|expo(nent)?|@expo(nent)?/.*|@expo-google-fonts/.*|react-navigation|@react-navigation/.*|@unimodules/.*|unimodules|sentry-expo|native-base|react-native-svg)"
]
},
"dependencies": {
"@expo-google-fonts/nunito-sans": "^0.2.3",
"@expo/config-plugins": "~7.2.2",
"@expo/webpack-config": "^19.0.0",
"@ptomasroos/react-native-multi-slider": "^2.2.2",
"@react-native-firebase/app": "^19.0.0",
"@react-native-firebase/auth": "^19.0.0",
"@react-native-firebase/crashlytics": "^19.0.0",
"@react-native-firebase/firestore": "^19.0.0",
"@react-native-firebase/storage": "^19.0.0",
"@react-native-google-signin/google-signin": "^10.1.1",
"@tamagui/animations-react-native": "^1.61.3",
"@tamagui/babel-plugin": "^1.61.3",
"@tamagui/config": "^1.61.3",
"@tamagui/font-inter": "^1.61.3",
"@tamagui/lucide-icons": "^1.61.3",
"@tamagui/themes": "^1.61.3",
"@types/firebase": "^3.2.1",
"expo": "49.0.9",
"expo-build-properties": "~0.8.3",
"expo-constants": "~14.4.2",
"expo-dev-client": "~2.4.13",
"expo-font": "~11.4.0",
"expo-image-picker": "~14.3.2",
"expo-linear-gradient": "~12.3.0",
"expo-linking": "~5.0.2",
"expo-router": "2.0.5",
"expo-secure-store": "~12.3.1",
"expo-splash-screen": "~0.20.5",
"expo-status-bar": "~1.6.0",
"expo-updates": "~0.18.19",
"firebase": "^10.8.1",
"jest-expo": "~49.0.0",
"punycode": "^2.3.1",
"react": "18.2.0",
"react-dom": "18.2.0",
"react-native": "0.72.10",
"react-native-gesture-handler": "~2.12.0",
"react-native-google-places-autocomplete": "^2.5.6",
"react-native-modal-datetime-picker": "^17.1.0",
"react-native-reanimated": "~3.3.0",
"react-native-screens": "~3.22.0",
"react-native-svg": "13.9.0",
"react-native-vector-icons": "^10.0.3",
"react-native-web": "~0.19.6",
"tamagui": "^1.61.3"
},
"devDependencies": {
"@babel/core": "^7.19.3",
"@google/semantic-release-replace-plugin": "1.1.0",
"@manypkg/cli": "^0.20.0",
"@react-native-async-storage/async-storage": "1.18.2",
"@react-native-community/datetimepicker": "7.2.0",
"@react-native-community/slider": "4.4.2",
"@semantic-release/changelog": "6.0.1",
"@semantic-release/git": "10.0.1",
"@semantic-release/github": "8.0.6",
"@semantic-release/npm": "9.0.1",
"@semantic-release/release-notes-generator": "10.0.3",
"@storybook/addon-actions": "^6.5.16",
"@storybook/addon-controls": "^6.5.16",
"@storybook/addon-ondevice-actions": "^6.5.7",
"@storybook/addon-ondevice-controls": "^6.5.7",
"@storybook/react-native": "^6.5.7",
"@testing-library/jest-dom": "^6.4.2",
"@testing-library/jest-native": "^5.4.3",
"@testing-library/react": "^14.2.1",
"@testing-library/react-native": "^12.4.3",
"@types/jest": "^29.5.12",
"@types/react": "~18.2.14",
"@typescript-eslint/eslint-plugin": "^5.49.0",
"@typescript-eslint/parser": "^5.49.0",
"babel-loader": "^8.3.0",
"babel-plugin-transform-inline-environment-variables": "^0.4.4",
"conventional-changelog-conventionalcommits": "5.0.0",
"eslint": "^8.21.0",
"eslint-config-prettier": "^8.6.0",
"eslint-plugin-prettier": "^4.2.1",
"eslint-plugin-react": "^7.32.1",
"eslint-plugin-simple-import-sort": "^10.0.0",
"firebase-mock": "^2.3.2",
"jest": "^29.7.0",
"prettier": "^2.8.3",
"react-native-safe-area-context": "4.6.3",
"react-test-renderer": "^18.2.0",
"semantic-release": "19.0.5",
"typescript": "^5.1.3"
},
"volta": {
"node": "18.17.0",
"yarn": "3.6.1"
},
"private": true,
"eslintConfig": {
"env": {
"jest": true
}
}
}
eas.json
{
"cli": {
"version": ">= 7.3.0"
},
"build": {
"development": {
"developmentClient": true,
"distribution": "internal",
"channel": "development"
},
"development-simulator": {
"developmentClient": true,
"distribution": "internal",
"ios": {
"simulator": true
},
"channel": "development-simulator"
},
"preview": {
"distribution": "internal",
"channel": "preview"
},
"production": {
"channel": "production"
}
},
"submit": {
"production": {}
}
}
I've tried going to older builds - but I didn't change anything in the following files that should impact it, just components.
I've tried clearly my caches and reinstalling with these commands
rm -rf ~/Library/Caches/com.apple.dt.Xcode
rm -rf ~/Library/Developer/Xcode/DerivedData
npm cache clean --force
watchman watch-del-all
rm -rf node_modules/.cache/babel-loader
rm -rf node_modules/.cache/webpack
rm -rf node_modules
npx expo install
npx expo prebuild