IOS Build error on Expo Application Services preview

I am trying the newest Expo Application Services preview and I run into an error when building the IOS binary of my app.

I run the following commands:

  1. eas build:configure
  2. eas build --platform ios

Then got the following error:
× Build failed
Error: Standalone build failed!

My build ID is:
52977f95-1715-41f1-8089-e5ed07b84933

What else should I share to help debug this issue? The logs from the build are very extensive.
What’s weird is that the classic expo build:ios runs just fine, and I’ve never run to a similar issue with it.

Expo diagnostics:

Expo CLI 4.0.15 environment info:
System:
OS: Windows 10 10.0.19042
Binaries:
Node: 12.16.2 - C:\Program Files\nodejs\node.EXE
npm: 6.14.9 - C:\Program Files\nodejs\npm.CMD
npmPackages:
expo: ^40.0.0 => 40.0.0
react: 16.13.1 => 16.13.1
react-dom: 16.13.1 => 16.13.1
react-native: https://github.com/expo/react-native/archive/sdk-40.0.0.tar.gz => 0.63.2
react-native-web: ~0.13.12 => 0.13.18
Expo Workflow: managed

hi there!

managed workflow support for eas build is very early still! we recommend using it with bare workflow apps for the best experience. expo build:ios is still the best option for managed apps.

any chance you could share your package.json with me? brent@expo.io

from examining your xcode logs, it looks like there is a javascript error in your app:

error Unable to resolve module `../components/reviews/StarRating` from `app/screens/BusinessDetailsScreen.js`: 

I was hoping to use the build services since the EAS submit to app store feature asked for a build from EAS.
Then I realized that I can provide the download URL from expo build to EAS submit. Excellent feature.

Here’s my package.json

{
  "main": "node_modules/expo/AppEntry.js",
  "scripts": {
    "start": "expo start",
    "android": "expo start --android",
    "ios": "expo start --ios",
    "web": "expo start --web",
    "eject": "expo eject"
  },
  "dependencies": {
    "@expo-google-fonts/montserrat": "^0.1.0",
    "@react-native-community/async-storage": "~1.12.0",
    "@react-native-community/masked-view": "0.1.10",
    "@react-navigation/bottom-tabs": "^5.7.1",
    "@react-navigation/material-bottom-tabs": "^5.2.13",
    "@react-navigation/native": "^5.7.0",
    "@react-navigation/stack": "^5.7.0",
    "axios": "^0.20.0",
    "expo": "^40.0.0",
    "expo-app-loading": "^1.0.1",
    "expo-apple-authentication": "~2.2.2",
    "expo-constants": "~9.3.3",
    "expo-crypto": "~8.4.0",
    "expo-facebook": "~9.1.0",
    "expo-firebase-analytics": "~2.6.0",
    "expo-font": "~8.4.0",
    "expo-linear-gradient": "~8.4.0",
    "expo-secure-store": "~9.3.0",
    "expo-sqlite": "~8.5.0",
    "expo-status-bar": "~1.0.3",
    "firebase": "^7.21.0",
    "formik": "^2.1.5",
    "indexeddbshim": "^6.6.0",
    "react": "16.13.1",
    "react-dom": "16.13.1",
    "react-native": "https://github.com/expo/react-native/archive/sdk-40.0.0.tar.gz",
    "react-native-device-detection": "^0.2.1",
    "react-native-elements": "^2.3.2",
    "react-native-gesture-handler": "~1.8.0",
    "react-native-loading-spinner-overlay": "^2.0.0",
    "react-native-map-link": "^2.7.19",
    "react-native-maps": "0.27.1",
    "react-native-modal": "^11.5.6",
    "react-native-modalbox": "^2.0.2",
    "react-native-paper": "^4.0.0",
    "react-native-progress": "^4.1.2",
    "react-native-reanimated": "~1.13.0",
    "react-native-safe-area-context": "3.1.9",
    "react-native-screens": "~2.15.0",
    "react-native-web": "~0.13.12",
    "sentry-expo": "^3.0.4",
    "yup": "^0.29.1"
  },
  "devDependencies": {
    "@babel/core": "~7.9.0",
    "babel-preset-expo": "8.3.0"
  },
  "private": true
}

That’s weird, I don’t get that error when running the app. That file exists, and I can run the app and build it with expo build just fine.

does it possibly have the .expo.js extension? any chance you could share your project with me on github? brentvatne

(btw sorry for confusing forums account switch)

you can use eas submit with the classic build service too: https://docs.expo.io/submit/classic-builds/

1 Like

Just shared it with you.

I’m sorry it has a lot of bad practices such as uploading API keys to the repo.
It started off small and meant to keep it private.

Thanks a lot for the help.

the problem here is that in the managed workflow we support the .jsx extension, but in “bare” apps we don’t. when you use eas build, we convert your managed app to a bare app on eas build servers, and so it appears that this is a discrepancy. we should probably remove jsx from the managed workflow, because this is not a useful extension and you should just use js or tsx instead :slight_smile: if you rename all of the jsx files to js in your project, it should build just fine. but keep in mind what i said above - you don’t need to use eas build for eas submit, and i would recommend sticking with expo build:ios until eas build stabilizes for managed apps

1 Like

Oh, thanks for the detailed response!
I understand, will keep that in mind for .jsx files.
Also, the submit feature with the binary generated from expo build works great.

Thanks again, have a good day!

This topic was automatically closed 20 days after the last reply. New replies are no longer allowed.