eas-cli: "main.jsbundle does not exist" error when building iOS version locally with Expo SDK 47 using eas-cli
Build/Submit details page URL
App is built with --local flag
Summary
I am trying to build the iOS version of an application locally whose Expo version I had upgraded to version 47. I have no issues building the Android version but run into issues when building the iOS. I can build the iOS version when I generate the Xcode project myself but cannot via eas.
Managed or bare?
Managed
Environment
expo-env-info 1.0.5 environment info:
System:
OS: macOS 13.0.1
Shell: 5.8.1 - /bin/zsh
Binaries:
Node: 16.18.1 - /usr/local/bin/node
Yarn: 1.22.19 - /opt/homebrew/bin/yarn
npm: 8.19.2 - /usr/local/bin/npm
Managers:
CocoaPods: 1.11.3 - /Users/lindanthillanayagam/.rvm/gems/ruby-3.0.0/bin/pod
SDKs:
iOS SDK:
Platforms: DriverKit 22.1, iOS 16.1, macOS 13.0, tvOS 16.1, watchOS 9.1
IDEs:
Android Studio: 2021.2 AI-212.5712.43.2112.8609683
Xcode: 14.1/14B47b - /usr/bin/xcodebuild
npmPackages:
@expo/webpack-config: ^0.17.2 => 0.17.3
expo: ^47.0.0 => 47.0.3
react: 18.1.0 => 18.1.0
react-dom: 18.1.0 => 18.1.0
react-native: 0.70.5 => 0.70.5
react-native-web: ~0.18.7 => 0.18.10
npmGlobalPackages:
eas-cli: 2.6.0
Expo Workflow: managed
Expo doctor output:
Expected package @expo/config-plugins@^5.0.2
Found invalid:
@expo/config-plugins@5.0.1
(for more info, run: npm why @expo/config-plugins)
Expected package @expo/prebuild-config@^5.0.5
Found invalid:
@expo/prebuild-config@5.0.3
(for more info, run: npm why @expo/prebuild-config)
Error output
[RUN_FASTLANE] › Compiling expo-updates Pods/EXUpdates » EXUpdatesAppLoaderTask.m
[RUN_FASTLANE] › Compiling expo-updates Pods/EXUpdates » EXUpdatesAppLoader.m
[RUN_FASTLANE] › Compiling expo-updates Pods/EXUpdates » EXUpdatesAppLauncherWithDatabase.m
[RUN_FASTLANE] › Compiling expo-updates Pods/EXUpdates » EXUpdatesAppLauncherNoDatabase.m
[RUN_FASTLANE] › Compiling expo-updates Pods/EXUpdates » EXUpdates-dummy.m
[RUN_FASTLANE] › Compiling expo-updates Pods/EXUpdates » EXDeferredRCTRootView.m
[RUN_FASTLANE] › Compiling expo-updates Pods/EXUpdates » EXDeferredRCTBridge.m
[RUN_FASTLANE] › Packaging expo-updates Pods/EXUpdates » libEXUpdates.a
[RUN_FASTLANE] › Executing expo-updates Pods/EXUpdates » Copy generated compatibility header
[RUN_FASTLANE] › Compiling Pods/Pods-* » Pods-*-dummy.m
[RUN_FASTLANE] › Compiling Pods/Pods-* » Pods-*-dummy.m
[RUN_FASTLANE] › Packaging Pods/Pods-* » libPods-*.a
[RUN_FASTLANE] › Packaging Pods/Pods-* » libPods-*.a
[RUN_FASTLANE] › Executing * » [CP] Check Pods Manifest.lock
[RUN_FASTLANE] › Executing * » Start Packager on http://localhost:8081
[RUN_FASTLANE] › Copying ios/*/Supporting/Expo.plist ➜ ./Expo.plist
[RUN_FASTLANE] › Compiling * » SplashScreen.storyboard
[RUN_FASTLANE] › Compiling * » noop-file.swift
[RUN_FASTLANE] › Compiling * » ExpoModulesProvider.swift
[RUN_FASTLANE] › Compiling * » ExpoModulesProvider.swift
[RUN_FASTLANE] › Compiling * » noop-file.swift
[RUN_FASTLANE] › Preparing * » Info.plist
[RUN_FASTLANE] › Compiling * » main.m
[RUN_FASTLANE] › Compiling * » *_vers.c
[RUN_FASTLANE] › Compiling * » AppDelegate.mm
[RUN_FASTLANE] › Compiling * » *_vers.c
[RUN_FASTLANE] › Compiling * » main.m
[RUN_FASTLANE] › Compiling * » AppDelegate.mm
[RUN_FASTLANE] › Linking * » °
[RUN_FASTLANE] ⚠️ ld: duplicate method '+moduleName' in
┌─[category]: ExpoBridgeModule-dcc699cb4d2671d91508c8989fb7b234.o ExpoModulesCore/libExpoModulesCore.a
└─[class]: ExpoBridgeModule-eb315bdad465193be09eab92d82f3e98.o ExpoModulesCore/libExpoModulesCore.a
[RUN_FASTLANE] ⚠️ ld: method '+UIDatePickerMode:' in category from /var/folders/rm/k90_yz9j5t1dtwg07wvqc_0m0000gn/T/eas-build-local-nodejs/cecb4bba-1329-4e4b-9c02-a1f3c2674eb7/build/ios/build/Build/Products/Release-iphonesimulator/React-Core/libReact-Core.a(RCTDatePickerManager.o) conflicts with same method from another category
[RUN_FASTLANE] ⚠️ ld: method '+UIUserInterfaceStyle:' in category from /var/folders/rm/k90_yz9j5t1dtwg07wvqc_0m0000gn/T/eas-build-local-nodejs/cecb4bba-1329-4e4b-9c02-a1f3c2674eb7/build/ios/build/Build/Products/Release-iphonesimulator/React-CoreModules/libReact-CoreModules.a(RCTAlertManager.o) conflicts with same method from another category
[RUN_FASTLANE] ⚠️ ld: method '+UIStatusBarAnimation:' in category from /var/folders/rm/k90_yz9j5t1dtwg07wvqc_0m0000gn/T/eas-build-local-nodejs/cecb4bba-1329-4e4b-9c02-a1f3c2674eb7/build/ios/build/Build/Products/Release-iphonesimulator/React-CoreModules/libReact-CoreModules.a(RCTStatusBarManager.o) conflicts with same method from another category
[RUN_FASTLANE] › Linking * » *
[RUN_FASTLANE] ⚠️ ld: duplicate method '+moduleName' in
┌─[category]: ExpoBridgeModule-dcc699cb4d2671d91508c8989fb7b234.o ExpoModulesCore/libExpoModulesCore.a
└─[class]: ExpoBridgeModule-eb315bdad465193be09eab92d82f3e98.o ExpoModulesCore/libExpoModulesCore.a
[RUN_FASTLANE] ⚠️ ld: method '+UIDatePickerMode:' in category from /var/folders/rm/k90_yz9j5t1dtwg07wvqc_0m0000gn/T/eas-build-local-nodejs/cecb4bba-1329-4e4b-9c02-a1f3c2674eb7/build/ios/build/Build/Products/Release-iphonesimulator/React-Core/libReact-Core.a(RCTDatePickerManager.o) conflicts with same method from another category
[RUN_FASTLANE] ⚠️ ld: method '+UIUserInterfaceStyle:' in category from /var/folders/rm/k90_yz9j5t1dtwg07wvqc_0m0000gn/T/eas-build-local-nodejs/cecb4bba-1329-4e4b-9c02-a1f3c2674eb7/build/ios/build/Build/Products/Release-iphonesimulator/React-CoreModules/libReact-CoreModules.a(RCTAlertManager.o) conflicts with same method from another category
[RUN_FASTLANE] ⚠️ ld: method '+UIStatusBarAnimation:' in category from /var/folders/rm/k90_yz9j5t1dtwg07wvqc_0m0000gn/T/eas-build-local-nodejs/cecb4bba-1329-4e4b-9c02-a1f3c2674eb7/build/ios/build/Build/Products/Release-iphonesimulator/React-CoreModules/libReact-CoreModules.a(RCTStatusBarManager.o) conflicts with same method from another category
[RUN_FASTLANE] › Generating debug * » *.app.dSYM
[RUN_FASTLANE] › Executing * » Bundle React Native code and images
[RUN_FASTLANE] the transform cache was reset.
[RUN_FASTLANE]
❌ error: File /var/folders/rm/k90_yz9j5t1dtwg07wvqc_0m0000gn/T/eas-build-local-nodejs/cecb4bba-1329-4e4b-9c02-a1f3c2674eb7/build/ios/build/Build/Products/Release-iphonesimulator/*.app/main.jsbundle does not exist. This must be a bug with React Native, please report it here: https://github.com/facebook/react-native/issues
[RUN_FASTLANE] Run script build phase '[CP-User] Generate app.config for prebuilt Constants.manifest' will be run during every build because it does not specify any outputs. To address this warning, either add output dependencies to the script phase, or configure it to run in every build by unchecking "Based on dependency analysis" in the script phase. (in target 'EXConstants' from project 'Pods')
[RUN_FASTLANE] ▸ ** BUILD FAILED **
[RUN_FASTLANE] ▸ The following build commands failed:
[RUN_FASTLANE] ▸ PhaseScriptExecution Bundle\ React\ Native\ code\ and\ images /var/folders/rm/k90_yz9j5t1dtwg07wvqc_0m0000gn/T/eas-build-local-nodejs/cecb4bba-1329-4e4b-9c02-a1f3c2674eb7/build/ios/build/Build/Intermediates.noindex/*.build/Release-iphonesimulator/*.build/Script-00DD1BFF1BD5951E006B06BC.sh (in target '*' from project '*')
[RUN_FASTLANE] ▸ (1 failure)
[RUN_FASTLANE] ** BUILD FAILED **
[RUN_FASTLANE]
[RUN_FASTLANE]
[RUN_FASTLANE] The following build commands failed:
[RUN_FASTLANE] PhaseScriptExecution Bundle\ React\ Native\ code\ and\ images /var/folders/rm/k90_yz9j5t1dtwg07wvqc_0m0000gn/T/eas-build-local-nodejs/cecb4bba-1329-4e4b-9c02-a1f3c2674eb7/build/ios/build/Build/Intermediates.noindex/*.build/Release-iphonesimulator/*.build/Script-00DD1BFF1BD5951E006B06BC.sh (in target '*' from project '*')
[RUN_FASTLANE] (1 failure)
[RUN_FASTLANE] Exit status: 65
[RUN_FASTLANE]
[RUN_FASTLANE] +-------------+-------------------------+
[RUN_FASTLANE] | Build environment |
[RUN_FASTLANE] +-------------+-------------------------+
[RUN_FASTLANE] | xcode_path | /Applications/Xcode.app |
[RUN_FASTLANE] | gym_version | 2.210.1 |
[RUN_FASTLANE] | sdk | iPhoneOS16.1.sdk |
[RUN_FASTLANE] +-------------+-------------------------+
[RUN_FASTLANE]
[RUN_FASTLANE] Looks like fastlane ran into a build/archive error with your project
[RUN_FASTLANE] It's hard to tell what's causing the error, so we wrote some guides on how
[RUN_FASTLANE] to troubleshoot build and signing issues: https://docs.fastlane.tools/codesigning/getting-started/
[RUN_FASTLANE] Before submitting an issue on GitHub, please follow the guide above and make
[RUN_FASTLANE] sure your project is set up correctly.
[RUN_FASTLANE] fastlane uses `xcodebuild` commands to generate your binary, you can see the
[RUN_FASTLANE] the full commands printed out in yellow in the above log.
[RUN_FASTLANE] Make sure to inspect the output above, as usually you'll find more error information there
[RUN_FASTLANE] [!] Error building the application - see the log above
[RUN_FASTLANE] Error: Fastlane build failed with unknown error. See logs for the "Run fastlane" and "Xcode Logs" phases for more information.
Fastlane errors in most cases are not printed at the end of the output, so you may not find any useful information in the last lines of output when looking for an error message.
Build failed
Fastlane build failed with unknown error. See logs for the "Run fastlane" and "Xcode Logs" phases for more information.
Fastlane errors in most cases are not printed at the end of the output, so you may not find any useful information in the last lines of output when looking for an error message.
Error: npx exited with non-zero code: 1
Reproducible demo or steps to reproduce from a blank project
- Initialize an expo project with version 47.
- Install the packages below:
"dependencies": {
"@expo/webpack-config": "^0.17.2",
"@react-native-async-storage/async-storage": "~1.17.3",
"@react-native-community/datetimepicker": "6.5.2",
"@react-native-community/netinfo": "9.3.5",
"@react-native-community/slider": "4.2.4",
"@react-navigation/bottom-tabs": "^6.3.3",
"@react-navigation/drawer": "^6.4.4",
"@react-navigation/native": "^6.0.12",
"@react-navigation/native-stack": "^6.8.0",
"@sentry/react-native": "4.2.2",
"@tanstack/query-async-storage-persister": "^4.2.3",
"@tanstack/react-query": "^4.2.3",
"@tanstack/react-query-persist-client": "^4.2.1",
"axios": "^1.1.3",
"dayjs": "^1.11.5",
"dotenv": "^16.0.2",
"expo": "^47.0.0",
"expo-application": "~5.0.1",
"expo-auth-session": "~3.7.2",
"expo-constants": "~14.0.2",
"expo-device": "~5.0.0",
"expo-font": "~11.0.1",
"expo-linking": "~3.2.3",
"expo-localization": "~14.0.0",
"expo-location": "~15.0.1",
"expo-notifications": "~0.17.0",
"expo-random": "~13.0.0",
"expo-secure-store": "~12.0.0",
"expo-splash-screen": "~0.17.4",
"expo-status-bar": "~1.4.2",
"expo-updates": "~0.15.4",
"expo-web-browser": "~12.0.0",
"i18next": "^21.9.1",
"i18next-pseudo": "^2.2.1",
"intl-pluralrules": "^1.3.1",
"jest": "^26.6.3",
"jest-expo": "^47.0.0",
"react": "18.1.0",
"react-dom": "18.1.0",
"react-i18next": "^11.18.5",
"react-native": "0.70.5",
"react-native-gesture-handler": "~2.8.0",
"react-native-maps": "1.3.2",
"react-native-modal": "^13.0.1",
"react-native-reanimated": "~2.12.0",
"react-native-safe-area-context": "4.4.1",
"react-native-screens": "~3.18.0",
"react-native-svg": "13.4.0",
"react-native-web": "~0.18.7",
"sentry-expo": "~5.0.0",
"styled-components": "^5.3.5"
},
"devDependencies": {
"@babel/core": "^7.19.3",
"@react-native-community/eslint-config": "^3.1.0",
"@testing-library/jest-native": "^5.1.2",
"@testing-library/react-native": "^11.4.0",
"@types/jest": "^26.0.14",
"@types/react": "~18.0.24",
"@types/react-native": "~0.70.6",
"@types/styled-components": "^5.1.26",
"@types/styled-components-react-native": "^5.1.3",
"@typescript-eslint/eslint-plugin": "^5.36.2",
"@typescript-eslint/parser": "^5.36.2",
"babel-plugin-react-native-web": "^0.18.9",
"eas-cli": "^2.6.0",
"eslint": "^8.23.0",
"eslint-config-prettier": "^8.5.0",
"eslint-plugin-array-func": "^3.1.7",
"eslint-plugin-import": "^2.25.3",
"eslint-plugin-jsx-a11y": "^6.6.1",
"eslint-plugin-promise": "^6.0.1",
"eslint-plugin-sonarjs": "^0.15.0",
"license-checker": "^25.0.1",
"msw": "^0.47.0",
"prettier": "^2.7.1",
"react-native-svg-transformer": "^1.0.0",
"react-test-renderer": "18.1.0",
"ts-node": "^10.8.1",
"typescript": "^4.6.3"
}
- Create eas.json file with the following content:
{
"cli": {
"version": ">= 2.6.0"
},
"build": {
"development": {
"developmentClient": true,
"distribution": "internal"
},
"preview": {
"distribution": "internal",
"ios": {
"simulator": true
},
"android": {
"buildType": "apk"
}
},
},
"submit": {
"production": {}
}
}
- Run the command
npx eas build --platform ios --non-interactive --local --profile preview
About this issue
- Original URL
- State: closed
- Created 2 years ago
- Reactions: 5
- Comments: 27 (1 by maintainers)
Dealing with this same issue… +1 on this still being a problem.
If you’re still having this issue, this might work: https://github.com/expo/expo/issues/21542#issuecomment-1497164662
Updated expo to v48, getting the same error “main.jsbundle” does not exist, under 48 as 47.
@FrancescoBonizzi is correct.
Download your Xcode log on your expo build details page. You will find imports with special characters (maybe in spanish?) and xcode is unable to find them. Just replace them.
SOLVED!
For anyone: the problem wasn’t .gitignore or .easignore, it was that that image that was “missing” had an accent, “Alì—Aliper.jpg”. I renamed it to remove the accent and now it is working.
Very weird error. Please, print a better error during build time!
SOLVED! I renamed “botãoExpandir.svg” to “botaoExpandir.svg” and now i was finally able to build. thanks @FrancescoBonizzi