Hello,
I have been using Expo for a while and started a project requiring Firebase services.
I installed react-native-firebase
following the steps described in their documentation.
I successfully ran expo prebuild --clean
which built the Android Java files with no issues. However, after running expo run:android
I get strange Gradle errors as seen below:
PS C:\Users\mikol\projects\infochor-app> expo run:android
› Building app...
Configuration on demand is an incubating feature.
> Configure project :expo-application
WARNING:Software Components will not be created automatically for Maven publishing from Android Gradle Plugin 8.0. To opt-in to the future behavior, set the Gradle property android.disableAutomaticComponentCreation=true in the `gradle.properties` file or use the new publishing DSL.
> Configure project :expo-constants
WARNING:Software Components will not be created automatically for Maven publishing from Android Gradle Plugin 8.0. To opt-in to the future behavior, set the Gradle property android.disableAutomaticComponentCreation=true in the `gradle.properties` file or use the new publishing DSL.
> Configure project :expo-file-system
WARNING:Software Components will not be created automatically for Maven publishing from Android Gradle Plugin 8.0. To opt-in to the future behavior, set the Gradle property android.disableAutomaticComponentCreation=true in the `gradle.properties` file or use the new publishing DSL.
> Configure project :expo-font
WARNING:Software Components will not be created automatically for Maven publishing from Android Gradle Plugin 8.0. To opt-in to the future behavior, set the Gradle property android.disableAutomaticComponentCreation=true in the `gradle.properties` file or use the new publishing DSL.
> Configure project :expo-keep-awake
WARNING:Software Components will not be created automatically for Maven publishing from Android Gradle Plugin 8.0. To opt-in to the future behavior, set the Gradle property android.disableAutomaticComponentCreation=true in the `gradle.properties` file or use the new publishing DSL.
> Configure project :expo-modules-core
WARNING:Software Components will not be created automatically for Maven publishing from Android Gradle Plugin 8.0. To opt-in to the future behavior, set the Gradle property android.disableAutomaticComponentCreation=true in the `gradle.properties` file or use the new publishing DSL.
FAILURE: Build completed with 2 failures.
1: Task failed with an exception.
-----------
* Where:
Script 'C:\Users\mikol\projects\infochor-app\node_modules\expo-modules-autolinking\scripts\android\autolinking_implementation.gradle' line: 272
* What went wrong:
A problem occurred evaluating project ':expo'.
> A problem occurred configuring project ':expo-modules-core'.
> Failed to notify project evaluation listener.
> com.android.builder.errors.EvalIssueException: SDK location not found. Define a valid SDK location with an ANDROID_HOME environment variable or by setting the sdk.dir path in your projects
local properties file at 'C:\Users\mikol\projects\infochor-app\android\local.properties'.
> Could not get unknown property 'release' for SoftwareComponentInternal set of type org.gradle.api.internal.component.DefaultSoftwareComponentContainer.
* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.
==============================================================================
2: Task failed with an exception.
-----------
* What went wrong:
A problem occurred configuring project ':expo'.
> com.android.builder.errors.EvalIssueException: compileSdkVersion is not specified. Please add it to build.gradle
* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.
==============================================================================
* Get more help at https://help.gradle.org
Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.
You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.
See https://docs.gradle.org/7.5.1/userguide/command_line_interface.html#sec:command_line_warnings
BUILD FAILED in 15s
5 actionable tasks: 4 executed, 1 from cache
Error: C:\Users\mikol\projects\infochor-app\android\gradlew.bat exited with non-zero code: 1
Error: C:\Users\mikol\projects\infochor-app\android\gradlew.bat exited with non-zero code: 1
at ChildProcess.completionListener (C:\Users\mikol\AppData\Local\Yarn\Data\global\node_modules\@expo\cli\node_modules\@expo\spawn-async\build\spawnAsync.js:52:23)
at Object.onceWrapper (node:events:628:26)
at ChildProcess.emit (node:events:513:28)
at ChildProcess.cp.emit (C:\Users\mikol\AppData\Local\Yarn\Data\global\node_modules\cross-spawn\lib\enoent.js:34:29)
at maybeClose (node:internal/child_process:1093:16)
at Process.ChildProcess._handle.onexit (node:internal/child_process:302:5)
...
at Object.spawnAsync [as default] (C:\Users\mikol\AppData\Local\Yarn\Data\global\node_modules\@expo\cli\node_modules\@expo\spawn-async\build\spawnAsync.js:17:21)
at spawnGradleAsync (C:\Users\mikol\AppData\Local\Yarn\Data\global\node_modules\@expo\cli\build\src\start\platforms\android\gradle.js:72:46)
at Object.assembleAsync (C:\Users\mikol\AppData\Local\Yarn\Data\global\node_modules\@expo\cli\build\src\start\platforms\android\gradle.js:52:18)
at runAndroidAsync (C:\Users\mikol\AppData\Local\Yarn\Data\global\node_modules\@expo\cli\build\src\run\android\runAndroidAsync.js:31:24)
at processTicksAndRejections (node:internal/process/task_queues:96:5)
Could someone please help me solve this?
Expo version: 47.0.12