Skip to content

Flutter fails to build with Android SDK Build-tools 24 installed #4681

Closed

Description

@ScottPierce

With the latest version of the Android build tools installed (24), all my flutter builds were failing, and I didn't know why.

It's easily reproducible after installing Android SDK Build-tools 24. Deleting build tools 24 fixes the issue.

Run the following:

flutter create myapp
cd myapp
flutter run

You'll get output that looks something like this:

flutter run
Building APK in debug mode (android-arm)...              
Exception in thread "main" java.lang.UnsupportedClassVersionError: com/android/dx/command/Main : Unsupported major.minor version 52.0
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)

Oops; flutter has exited unexpectedly: "Exit code 1 from: /Users/spierce7/Android/sdk/build-tools/24.0.0/dx --dex --force-jumbo --output /var/folders/sk/23bc7hkx66l094f_x2npc4qr0000gn/T/flutter_toolsNUIwjs/classes.dex /Users/spierce7/frameworks/flutter/bin/cache/artifacts/engine/android-arm/classes.dex.jar".
Crash report written to /Users/spierce7/workspace/Personal/flutter/myapp3/flutter_01.log;
please let us know at https://github.com/flutter/flutter/issues.

Here is the generated log file:

command

flutter run

exception

Exit code 1 from: /Users/spierce7/Android/sdk/build-tools/24.0.0/dx --dex --force-jumbo --output /var/folders/sk/23bc7hkx66l094f_x2npc4qr0000gn/T/flutter_toolsNUIwjs/classes.dex /Users/spierce7/frameworks/flutter/bin/cache/artifacts/engine/android-arm/classes.dex.jar

package:flutter_tools/src/base/process.dart 144                   _runWithLoggingSync
package:flutter_tools/src/base/process.dart 81                    runCheckedSync
package:flutter_tools/src/commands/build_apk.dart 104             _ApkBuilder.compileClassesDex
package:flutter_tools/src/commands/build_apk.dart 315             _buildApk
package:flutter_tools/src/commands/build_apk.dart 540             buildAndroid.<async>
dart:async                                                        _SyncCompleter.complete
package:flutter_tools/src/flx.dart 305                            buildFlx.<async>
dart:async                                                        _SyncCompleter.complete
package:flutter_tools/src/flx.dart 461                            assemble.<async>
===== asynchronous gap ===========================
dart:async                                                        _Completer.completeError
package:flutter_tools/src/commands/build_apk.dart 557             buildAndroid.<async>
dart:async                                                        _SyncCompleter.complete
package:flutter_tools/src/flx.dart 305                            buildFlx.<async>
dart:async                                                        _SyncCompleter.complete
package:flutter_tools/src/flx.dart 461                            assemble.<async>
===== asynchronous gap ===========================
dart:async                                                        _asyncThenWrapperHelper
package:flutter_tools/src/commands/build_apk.dart                 buildAndroid
package:flutter_tools/src/commands/build_apk.dart 567             buildApk.<async>
===== asynchronous gap ===========================
dart:async                                                        Future.Future.microtask
package:flutter_tools/src/commands/build_apk.dart                 buildApk
package:flutter_tools/src/commands/run.dart 181                   startApp.<async>
===== asynchronous gap ===========================
dart:async                                                        Future.Future.microtask
package:flutter_tools/src/commands/run.dart                       startApp
package:flutter_tools/src/commands/run.dart 129                   RunCommand.runInProject.<async>
===== asynchronous gap ===========================
dart:async                                                        Future.Future.microtask
package:flutter_tools/src/commands/run.dart                       RunCommand.runInProject
package:flutter_tools/src/runner/flutter_command.dart 172         FlutterCommand._run.<async>
dart:async                                                        _SyncCompleter.complete
package:flutter_tools/src/cache.dart 121                          Cache.updateAll.<async>
===== asynchronous gap ===========================
dart:async                                                        _asyncThenWrapperHelper
package:flutter_tools/src/runner/flutter_command.dart             FlutterCommand._run
package:flutter_tools/src/runner/flutter_command.dart 103         FlutterCommand.run
package:args/command_runner.dart 176                              CommandRunner.runCommand.<fn>
dart:async                                                        Future.Future.sync
package:args/command_runner.dart 129                              CommandRunner.runCommand
package:flutter_tools/src/runner/flutter_command_runner.dart 180  FlutterCommandRunner.runCommand
package:args/command_runner.dart 103                              CommandRunner.run.<fn>
dart:async                                                        Future.Future.sync
package:args/command_runner.dart 103                              CommandRunner.run
package:flutter_tools/src/runner/flutter_command_runner.dart 123  FlutterCommandRunner.run
package:flutter_tools/executable.dart 88                          main.<async>.<fn>.<async>
===== asynchronous gap ===========================
package:stack_trace                                               Chain.capture
package:flutter_tools/executable.dart 82                          main.<async>

flutter doctor

[✓] Flutter (on Mac OS, channel alpha)
    • Flutter at /Users/spierce7/frameworks/flutter
    • Framework revision 6d2d495369 (2 weeks ago), engine revision a943c732d5

[✓] Android toolchain - develop for Android devices (Android SDK 24.0.0)
    • Android SDK at /Users/spierce7/Android/sdk
    • Platform android-N, build-tools 24.0.0
    • Java(TM) SE Runtime Environment (build 1.7.0_80-b15)

[✓] iOS toolchain - develop for iOS devices (Xcode 7.3.1)
    • XCode at /Applications/Xcode.app/Contents/Developer
    • Xcode 7.3.1, Build version 7D1014

[✓] Atom - a lightweight development environment for Flutter
    • flutter plugin version 0.2.2
    • dartlang plugin version 0.6.22

Activity

  1. abarth commented on Jun 22, 2016

    @abarth
    Contributor

    Thanks for the detailed report and diagnosis.

  2. eseidelGoogle commented on Jun 22, 2016

    @eseidelGoogle
    Contributor
  3. jason-simmons commented on Jun 22, 2016

    @jason-simmons
    Member

    Which version of the Java runtime is in your path?

    I believe the version 24 build tools require Java 1.8

  4. ScottPierce commented on Jun 22, 2016

    @ScottPierce
    Author

    @jason-simmons My JAVA_HOME is set to 1.7. Maybe that's it?

  5. modified the milestone: on Aug 1, 2016
  6. shakeel commented on Aug 9, 2016

    @shakeel

    I ran into the same problem, and I can confirm that after installing JDK8, the flutter build apk command successfully builds the apk.

  7. modified the milestones: 2: Make Early Adopters happy, on Jan 30, 2017
  8. sethladd commented on Mar 17, 2017

    @sethladd
    Contributor

    I believe flutter tool now checks for SDK 25. Closing this as we haven't heard reports of this issue in quite a while. Please let us know if it continues to happen.

  9. github-actions commented on Sep 5, 2021

    @github-actions

    This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.

  10. locked as resolved and limited conversation to collaborators on Sep 5, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    c: crashStack traces logged to the consoleplatform-androidAndroid applications specifically

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions