EAS build failure for Android with Expo 46

Context:

We use the managed workflow, and have just upgraded from Expo 45 to Expo 46.
EAS cli version: eas-cli/2.9.0 darwin-arm64 node-v16.13.0
Also, we have a monorepo (not sure if that’s relevant to this issue)

Problem:

When I do eas build -p android, I’m getting odd build errors. The iOS build works fine. Also both android and ios work fine locally in Expo Go. But when I do an eas build for android, I get the following error:

[stderr] FAILURE: Build completed with 2 failures.
[stderr] 1: Task failed with an exception.
[stderr] -----------
[stderr] * Where:
[stderr] Build file '/home/expo/workingdir/build/node_modules/expo/android/build.gradle' line: 9
[stderr] * What went wrong:
[stderr] A problem occurred evaluating project ':expo'.
[stderr] > Cannot invoke method multiply() on null object
[stderr] * Try:
[stderr] > Run with --stacktrace option to get the stack trace.
[stderr] > Run with --info or --debug option to get more log output.
[stderr] > Run with --scan to get full insights.
[stderr] ==============================================================================
[stderr] 2: Task failed with an exception.
[stderr] -----------
[stderr] * Where:
[stderr] Build file '/home/expo/workingdir/build/node_modules/expo/android/build.gradle' line: 78
[stderr] * What went wrong:
[stderr] A problem occurred configuring project ':expo'.
[stderr] > Could not get unknown property 'release' for SoftwareComponentInternal set of type org.gradle.api.internal.component.DefaultSoftwareComponentContainer.
[stderr] * Try:
[stderr] > Run with --stacktrace option to get the stack trace.
[stderr] > Run with --info or --debug option to get more log output.
[stderr] > Run with --scan to get full insights.
[stderr] ==============================================================================
[stderr] * Get more help at https://help.gradle.org
[stderr] BUILD FAILED in 1m 47s

For anyone on the Expo team that may see this, here’s a link to the build:

Any help is appreciated. We have several bug fixes that we are hoping to deploy ASAP, and these build errors are preventing us from deploying for Android.

Thanks!

For anyone who has run into similar issues as I described here, I solved the problem! I’m in a monorepo, and I needed to add “expo” to the “nohoist” section of the root packages.json. I removed all my node_modules paths (rm node_modules */node_modules) and did a fresh yarn install.

2 Likes