My android application using Kotlin is throwing this exception when I try to Run 'app' in the emulator o in my cellphone. When I build my project it runs well, with no errors.
I am using:
- SDK 28 (Android 9.0 (Pie))
- Gradle 5.1.1
- Gradle Plugin 3.5.0-alpha03
- Kotlin 1.3.10
- Java 1.8.0_151
- OSX 10.13.2
org.gradle.internal.exceptions.LocationAwareException: buildOutput.apkData must not be null
at org.gradle.initialization.exception.DefaultExceptionAnalyser.transform(DefaultExceptionAnalyser.java:99)
at org.gradle.initialization.exception.DefaultExceptionAnalyser.collectFailures(DefaultExceptionAnalyser.java:65)
at org.gradle.initialization.exception.MultipleBuildFailuresExceptionAnalyser.transform(MultipleBuildFailuresExceptionAnalyser.java:39)
at org.gradle.initialization.exception.StackTraceSanitizingExceptionAnalyser.transform(StackTraceSanitizingExceptionAnalyser.java:29)
at org.gradle.initialization.DefaultGradleLauncher.finishBuild(DefaultGradleLauncher.java:194)
at org.gradle.initialization.DefaultGradleLauncher.finishBuild(DefaultGradleLauncher.java:141)
...
Caused by: java.lang.IllegalStateException: buildOutput.apkData must not be null
at com.android.build.gradle.internal.ide.EarlySyncBuildOutput$Companion$load$2.invoke(EarlySyncBuildOutput.kt:103)
at com.android.build.gradle.internal.ide.EarlySyncBuildOutput$Companion$load$2.invoke(EarlySyncBuildOutput.kt:67)
at kotlin.sequences.TransformingSequence$iterator$1.next(Sequences.kt:174)
at kotlin.sequences.SequencesKt___SequencesKt.toCollection(_Sequences.kt:691)
at kotlin.sequences.SequencesKt___SequencesKt.toMutableList(_Sequences.kt:721)
at kotlin.sequences.SequencesKt___SequencesKt.toList(_Sequences.kt:712)
...
Click
Build
->Clean Project
Then
Build
->Make Project
Tested on gradle 3.5.0-alpha3, -alpha5 and 3.4.0 (project gradle)
Seems cleaning the project may resolve the issue, but for me it worked like this.
Just change the Apk release/debug location.
EX:
after change :
I've tried all solutions and non of them helped! finally after many trying, I figured it out, just follow the tips:
yourProject/app/
app level build.gradle (inside android):
5. finally this command:
mac:
./gradlew clean assemble_YOUR_FAVOR_Release
win:
gradlew clean assemble_YOUR_FAVOR_Release
where
_YOUR_FAVOR_
is your optional favor, if you are not using any favor, just simply useassembleRelease
instead ofassemble_YOUR_FAVOR_Release
I was also annoyed by the same bug. But changing my Signed apk destination from c/users/project/app to c/users/project worked for me.
I've tried many things to solve the issue, but nothing helped. I get this error when trying to generate a signed apk.
Downgrading to older versions of Android Studio helped (3.4.2) worked, however this is not the solution.
The 'Clean Project' function in AS does not clean the place where your generated apk is created and there is one file that may be blocking the whole procedure: output.json
Try removing output.json from .../app/projectname/release/output.json