Spinteractive
Spinteractive

Reputation: 261

Why is my Gradle Failing on my Unity Android Build?

I used to use 'Internal' option to build my Android Version but in Unity 2019 there is no option.

When trying to build my Android version I get the following errors:

D8: Program type already present: android.support.annotation.FractionRes UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':transformClassesAndResourcesWithR8ForRelease'. com.android.tools.r8.CompilationFailedException: Compilation failed to complete * 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 BUILD FAILED in 19s

Task :preBuild UP-TO-DATE

Task :extractProguardFiles

Task :CropLib:preBuild UP-TO-DATE

Task :CropLib:preReleaseBuild UP-TO-DATE

Task :CropLib:checkReleaseManifest

Task :CropLib:processReleaseManifest

Task :Firebase:preBuild UP-TO-DATE

Task :Firebase:preReleaseBuild UP-TO-DATE

Task :Firebase:checkReleaseManifest

Task :Firebase:processReleaseManifest

Task :preReleaseBuild

Task :CropLib:compileReleaseAidl NO-SOURCE

Task :Firebase:compileReleaseAidl NO-SOURCE

Task :compileReleaseAidl NO-SOURCE

Task :CropLib:packageReleaseRenderscript NO-SOURCE

Task :Firebase:packageReleaseRenderscript NO-SOURCE

Task :compileReleaseRenderscript NO-SOURCE

Task :checkReleaseManifest

Task :generateReleaseBuildConfig

Task :prepareLintJar

Task :generateReleaseSources

Task :CropLib:compileReleaseRenderscript NO-SOURCE

Task :CropLib:generateReleaseBuildConfig

Task :CropLib:generateReleaseResValues

Task :CropLib:generateReleaseResources

Task :CropLib:packageReleaseResources

Task :CropLib:generateReleaseRFile

Task :CropLib:prepareLintJar

Task :CropLib:generateReleaseSources

Task :CropLib:javaPreCompileRelease

Task :CropLib:compileReleaseJavaWithJavac

Task :CropLib:bundleLibCompileRelease

Task :Firebase:compileReleaseRenderscript NO-SOURCE

Task :Firebase:generateReleaseBuildConfig

Task :Firebase:generateReleaseResValues

Task :Firebase:generateReleaseResources

Task :Firebase:packageReleaseResources

Task :Firebase:generateReleaseRFile

Task :Firebase:prepareLintJar

Task :Firebase:generateReleaseSources

Task :Firebase:javaPreCompileRelease

Task :Firebase:compileReleaseJavaWithJavac

Task :Firebase:bundleLibCompileRelease

Task :javaPreCompileRelease

Task :mainApkListPersistenceRelease

Task :generateReleaseResValues

Task :generateReleaseResources

Task :mergeReleaseResources

Task :createReleaseCompatibleScreenManifests

Task :processReleaseManifest

/Users/spin/Desktop/Yellows Unity App - Android

2019/Temp/gradleOut/src/main/AndroidManifest.xml:24:9-31:50 Warning: activity#com.google.firebase.auth.internal.FederatedSignInActivity@android:launchMode was tagged at AndroidManifest.xml:24 to replace other declarations but no other declaration present warn: removing resource com.Yellows.Monthly:string/save without required default value.

Task :processReleaseResources Task :compileReleaseJavaWithJavac Task :compileReleaseSources Task :CropLib:prepareLintJarForPublish Task :Firebase:prepareLintJarForPublish Task :lintVitalRelease Task :mergeReleaseShaders Task :compileReleaseShaders Task :generateReleaseAssets Task :CropLib:mergeReleaseShaders Task :CropLib:compileReleaseShaders Task :CropLib:generateReleaseAssets Task :CropLib:packageReleaseAssets Task :Firebase:mergeReleaseShaders Task :Firebase:compileReleaseShaders Task :Firebase:generateReleaseAssets Task :Firebase:packageReleaseAssets Task :mergeReleaseAssets Task :validateSigningRelease Task :signingConfigWriterRelease Task :processReleaseJavaRes NO-SOURCE Task :CropLib:processReleaseJavaRes NO-SOURCE Task :CropLib:bundleLibResRelease Task :Firebase:processReleaseJavaRes NO-SOURCE Task :Firebase:bundleLibResRelease Task :transformResourcesWithMergeJavaResForRelease Task :CropLib:bundleLibRuntimeRelease Task :CropLib:mergeReleaseConsumerProguardFiles Task :Firebase:bundleLibRuntimeRelease Task :Firebase:mergeReleaseConsumerProguardFiles Task :transformClassesAndResourcesWithR8ForRelease FAILED R8 is the new Android code shrinker. If you experience any issues, please file a bug at https://issuetracker.google.com, using 'Shrinker (R8)' as component name. You can disable R8 by updating gradle.properties with 'android.enableR8=false'. Current version is: 1.4.77 (build b74371231cb896b02f83285efb055b7c00ff64d8 from go/r8bot (luci-r8-ci-archive-0-eqqf)). Deprecated Gradle features were used in this build, making it incompatible with Gradle 6.0. Use '--warning-mode all' to show the individual deprecation warnings. See https://docs.gradle.org/5.1.1/userguide/command_line_interface.html#sec:command_line_warnings 55 actionable tasks: 55 executed CommandInvokationFailure: Gradle build failed. /Applications/Unity/Hub/Editor/2019.2.0f1/PlaybackEngines/AndroidPlayer/Tools/OpenJDK/MacOS/bin/java -classpath "/Applications/Unity/Hub/Editor/2019.2.0f1/PlaybackEngines/AndroidPlayer/Tools/gradle/lib/gradle-launcher-5.1.1.jar" org.gradle.launcher.GradleMain "-Dorg.gradle.jvmargs=-Xmx4096m" "assembleRelease"

stderr[ D8: Program type already present: android.support.annotation.FractionRes

FAILURE: Build failed with an exception.

BUILD FAILED in 19s ] stdout[

Task :preBuild UP-TO-DATE Task :extractProguardFiles Task :CropLib:preBuild UP-TO-DATE Task :CropLib:preReleaseBuild UP-TO-DATE Task :CropLib:checkReleaseManifest Task :CropLib:processReleaseManifest Task :Firebase:preBuild UP-TO-DATE Task :Firebase:preReleaseBuild UP-TO-DATE Task :Firebase:checkReleaseManifest Task :Firebase:processReleaseManifest Task :preReleaseBuild Task :CropLib:compileReleaseAidl NO-SOURCE Task :Firebase:compileReleaseAidl NO-SOURCE Task :compileReleaseAidl NO-SOURCE Task :CropLib:packageReleaseRenderscript NO-SOURCE Task :Firebase:packageReleaseRenderscript NO-SOURCE Task :compileReleaseRenderscript NO-SOURCE Task :checkReleaseManifest Task :generateReleaseBuildConfig Task :prepareLintJar Task :generateReleaseSources Task :CropLib:compileReleaseRenderscript NO-SOURCE Task :CropLib:generateReleaseBuildConfig Task :CropLib:generateReleaseResValues Task :CropLib:generateReleaseResources Task :CropLib:packageReleaseResources Task :CropLib:generateReleaseRFile Task :CropLib:prepareLintJar Task :CropLib:generateReleaseSources Task :CropLib:javaPreCompileRelease Task :CropLib:compileReleaseJavaWithJavac Task :CropLib:bundleLibCompileRelease Task :Firebase:compileReleaseRenderscript NO-SOURCE Task :Firebase:generateReleaseBuildConfig Task :Firebase:generateReleaseResValues Task :Firebase:generateReleaseResources Task :Firebase:packageReleaseResources Task :Firebase:generateReleaseRFile Task :Firebase:prepareLintJar Task :Firebase:generateReleaseSources Task :Firebase:javaPreCompileRelease Task :Firebase:compileReleaseJavaWithJavac Task :Firebase:bundleLibCompileRelease Task :javaPreCompileRelease Task :mainApkListPersistenceRelease Task :generateReleaseResValues Task :generateReleaseResources Task :mergeReleaseResources Task :createReleaseCompatibleScreenManifests

Task :processReleaseManifest /Users/spin/Desktop/Yellows Unity App - Android 2019/Temp/gradleOut/src/main/AndroidManifest.xml:24:9-31:50 Warning: activity#com.google.firebase.auth.internal.FederatedSignInActivity@android:launchMode was tagged at AndroidManifest.xml:24 to replace other declarations but no other declaration present warn: removing resource com.Yellows.Monthly:string/save without required default value.

Task :processReleaseResources Task :compileReleaseJavaWithJavac Task :compileReleaseSources Task :CropLib:prepareLintJarForPublish Task :Firebase:prepareLintJarForPublish Task :lintVitalRelease Task :mergeReleaseShaders Task :compileReleaseShaders Task :generateReleaseAssets Task :CropLib:mergeReleaseShaders Task :CropLib:compileReleaseShaders Task :CropLib:generateReleaseAssets Task :CropLib:packageReleaseAssets Task :Firebase:mergeReleaseShaders Task :Firebase:compileReleaseShaders Task :Firebase:generateReleaseAssets Task :Firebase:packageReleaseAssets Task :mergeReleaseAssets Task :validateSigningRelease Task :signingConfigWriterRelease Task :processReleaseJavaRes NO-SOURCE Task :CropLib:processReleaseJavaRes NO-SOURCE Task :CropLib:bundleLibResRelease Task :Firebase:processReleaseJavaRes NO-SOURCE Task :Firebase:bundleLibResRelease Task :transformResourcesWithMergeJavaResForRelease Task :CropLib:bundleLibRuntimeRelease Task :CropLib:mergeReleaseConsumerProguardFiles Task :Firebase:bundleLibRuntimeRelease Task :Firebase:mergeReleaseConsumerProguardFiles

Task :transformClassesAndResourcesWithR8ForRelease FAILED R8 is the new Android code shrinker. If you experience any issues, please file a bug at https://issuetracker.google.com, using 'Shrinker (R8)' as component name. You can disable R8 by updating gradle.properties with 'android.enableR8=false'. Current version is: 1.4.77 (build b74371231cb896b02f83285efb055b7c00ff64d8 from go/r8bot (luci-r8-ci-archive-0-eqqf)).

Deprecated Gradle features were used in this build, making it incompatible with Gradle 6.0. Use '--warning-mode all' to show the individual deprecation warnings. See https://docs.gradle.org/5.1.1/userguide/command_line_interface.html#sec:command_line_warnings 55 actionable tasks: 55 executed ] exit code: 1 UnityEditor.Android.Command.WaitForProgramToRun (UnityEditor.Utils.Program p, UnityEditor.Android.Command+WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg) (at <8277255796414cc8b8865316c1676de5>:0) UnityEditor.Android.Command.Run (System.Diagnostics.ProcessStartInfo psi, UnityEditor.Android.Command+WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg) (at <8277255796414cc8b8865316c1676de5>:0) UnityEditor.Android.Command.Run (System.String command, System.String args, System.String workingdir, UnityEditor.Android.Command+WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg) (at <8277255796414cc8b8865316c1676de5>:0) UnityEditor.Android.AndroidJavaTools.RunJava (System.String args, System.String workingdir, System.Action1[T] progress, System.String error) (at <8277255796414cc8b8865316c1676de5>:0) UnityEditor.Android.GradleWrapper.Run (UnityEditor.Android.AndroidJavaTools javaTools, System.String workingdir, System.String task, System.Action1[T] progress) (at <8277255796414cc8b8865316c1676de5>:0) Rethrow as GradleInvokationException: Gradle build failed UnityEditor.Android.GradleWrapper.Run (UnityEditor.Android.AndroidJavaTools javaTools, System.String workingdir, System.String task, System.Action`1[T] progress) (at <8277255796414cc8b8865316c1676de5>:0) UnityEditor.Android.PostProcessor.Tasks.BuildGradleProject.Execute (UnityEditor.Android.PostProcessor.PostProcessorContext context) (at <8277255796414cc8b8865316c1676de5>:0) UnityEditor.Android.PostProcessor.PostProcessRunner.RunAllTasks (UnityEditor.Android.PostProcessor.PostProcessorContext context) (at <8277255796414cc8b8865316c1676de5>:0) Rethrow as BuildFailedException: Exception of type 'UnityEditor.Build.BuildFailedException' was thrown. UnityEditor.Android.PostProcessor.CancelPostProcess.AbortBuild (System.String title, System.String message, System.Exception ex) (at <8277255796414cc8b8865316c1676de5>:0) UnityEditor.Android.PostProcessor.PostProcessRunner.RunAllTasks (UnityEditor.Android.PostProcessor.PostProcessorContext context) (at <8277255796414cc8b8865316c1676de5>:0) UnityEditor.Android.PostProcessAndroidPlayer.PostProcess (UnityEditor.BuildTarget target, System.String stagingAreaData, System.String stagingArea, System.String playerPackage, System.String installPath, System.String companyName, System.String productName, UnityEditor.BuildOptions options, UnityEditor.RuntimeClassRegistry usedClassRegistry, UnityEditor.Build.Reporting.BuildReport report) (at <8277255796414cc8b8865316c1676de5>:0) UnityEditor.Android.AndroidBuildPostprocessor.PostProcess (UnityEditor.Modules.BuildPostProcessArgs args, UnityEditor.BuildProperties& outProperties) (at <8277255796414cc8b8865316c1676de5>:0) UnityEditor.PostprocessBuildPlayer.Postprocess (UnityEditor.BuildTargetGroup targetGroup, UnityEditor.BuildTarget target, System.String installPath, System.String companyName, System.String productName, System.Int32 width, System.Int32 height, UnityEditor.BuildOptions options, UnityEditor.RuntimeClassRegistry usedClassRegistry, UnityEditor.Build.Reporting.BuildReport report) (at /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPipeline/PostprocessBuildPlayer.cs:281) UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

Build completed with a result of 'Failed'

UnityEditor.BuildPlayerWindow+BuildMethodException: 114 errors at UnityEditor.BuildPlayerWindow+DefaultBuildMethods.BuildPlayer (UnityEditor.BuildPlayerOptions options) [0x00242] in /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPlayerWindowBuildMethods.cs:190 at UnityEditor.BuildPlayerWindow.CallBuildMethods (System.Boolean askForBuildLocation, UnityEditor.BuildOptions defaultBuildOptions) [0x0007f] in /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPlayerWindowBuildMethods.cs:95 UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

Upvotes: 0

Views: 12368

Answers (3)

Martin Zeitler
Martin Zeitler

Reputation: 76679

Library com.android.support:support-annotations:26.1.0 should only exist once in the package:

implementation ("com.android.support:support-v4:26.1.0") {
    exclude group: "com.android.support", module: "support-annotations"
}

Upvotes: 1

Patrick Martin
Patrick Martin

Reputation: 3131

It looks like you're including the symbol android.support.annotation.FractionRes multiple times (see this).

My first guess is that you used to explode the JARs and now they're just included in your gradle file. You might want to clear out Assets/Plugins/Android (especially if it's filled with jar files) and force run the play services resolver afterwards. See this.

My second guess is that this has to do with the support library to androidx migration Firebase underwent in June. In this case, there are a few things you can do to resolve the issue.

First, make sure that you have the latest (6.5.0 as of right now) Unity SDK. Back in July, updates were made that fix these sorts of issues specifically.

Next, look at your play services resolver settings and make sure Patch mainTemplate.gradle and Use Jetifier are selected. Especially if you do have a mainTemplate.gradle file, this will help resolve some issues. sample Android Resolver Settings

I've written up some information about the Play Services Resolver here, which I also linked above.

I hope something here helps!

--Patrick

Upvotes: 1

Farm
Farm

Reputation: 1

  • What went wrong: Execution failed for task ':transformClassesAndResourcesWithR8ForRelease'.FAILED

if you using below lines in progaurd-project file, then comment them and Generate release build again.
-injars bin/classes -injars libs

Upvotes: 0

Related Questions