android launch issues. Unsupported class file major version 57

前端 未结 6 498
耶瑟儿~
耶瑟儿~ 2020-12-07 00:35

I have followed the mac android getting started but when I run-android it fails with the following error(s). I\'ve tried to find the answer online but I cant seem to find a

相关标签:
6条回答
  • 2020-12-07 01:02

    I suffer the same issue when run gradle build. According to search from google and github. I found the gradle current version (5.x.x) not support jdk 13. Finally, the 6.x version support it, but it has not been released, so I have to downgrade the jdk version to 12.x.

    Downgrade java to 12 https://www.jverdeyen.be/mac/downgrade-brew-cask-application/

    brew cask uninstall adoptopenjdk # uninstall jdk version 13.x
    brew tap AdoptOpenJDK/openjdk
    brew cask install adoptopenjdk12
    
    0 讨论(0)
  • 2020-12-07 01:03

    I upgraded from AdoptOpenJDK 13 to 14 and my Android projects now build successfully.

    0 讨论(0)
  • 2020-12-07 01:05

    To fix this error I went into android/gradle/wrapper/gradle-wrapper.properties file and modified the distributionUrl which was set to gradle-5.5 to gradle-6.0. For some reason it does not recognize the 6.2 distribution, even though this is the version of gradle I am currently on. I figured this was supposed to correspond to the version but apparently not.

    Before: distributionUrl=https://services.gradle.org/distributions/gradle-5.5-all.zip

    After: distributionUrl=https://services.gradle.org/distributions/gradle-6.0-all.zip

    Let me know if this worked for you.

    0 讨论(0)
  • 2020-12-07 01:08

    This is because your JDK version doesnot support Gradle version of your project. Gradle 5 is not supported in jdk-13. Best Solution is to change your gradle version in gradle-wrapper.properties. You can set any gradle version later than 6,

    Or

    Got to (on Mac) Preferences>Build,Execution,Deployment>Gradle

    (Windows) File>Settings>Build,Execution,Deployment>Gradle

    Then under section Gradle You can choose Gradle and Java as given in picture below

    You can also install gradle separately and use specified path. However I recommend you to use gradle-wrapper.properties file and Gradle JVM to internal JDK or Project JVM. This way you don't have to uninstall your JDK 13 and install downgraded JDK11 or JDK12

    If you do not find this option in Android Studio, Downgrade your JDK or use first option.

    0 讨论(0)
  • 2020-12-07 01:10

    I landed on this page after searching for this error when I did ./gradlew bootRun as described in the Okta Spring Security Authentication Example. Indeed I have OpenJDK13 on Ubuntu 20:

    $ java --version
    openjdk 13.0.3 2020-04-14
    OpenJDK Runtime Environment (build 13.0.3+3-Ubuntu-1ubuntu2)
    OpenJDK 64-Bit Server VM (build 13.0.3+3-Ubuntu-1ubuntu2, mixed mode)
    

    I didn't like the idea of downgrading my Java version, so instead I upgraded Gradle and rebuilt gradlew which is a wrapper that is specific to the project. Before attempting this solution, make sure that you're using version control or have a backup of the current project.

    These were the steps:

    1) Install skdkman to easily install gradle. Using apt install gave me an ancient version.

    curl -s "https://get.sdkman.io" | bash
    source "$HOME/.sdkman/bin/sdkman-init.sh"
    

    2) Check that sdkman installed correctly

    sdk version
    

    3) Install gradle 6

    sdk install gradle 6.5
    

    4) Rebuild gradlew on the same directory

    gradle wrapper
    

    5) Run application

    ./gradlew bootRun
    

    You should see something like this:

    Downloading https://services.gradle.org/distributions/gradle-6.5-bin.zip
    .........10%..........20%..........30%..........40%.........50%..........60%..........70%..........80%.........90%..........100%
    
    > Task :bootRun
    
      .   ____          _            __ _ _
     /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
    ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
     \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
      '  |____| .__|_| |_|_| |_\__, | / / / /
     =========|_|==============|___/=/_/_/_/
     :: Spring Boot ::        (v2.1.5.RELEASE)
    

    Doing git status shows that many files have changed:

    Changes not staged for commit:
      (use "git add <file>..." to update what will be committed)
      (use "git restore <file>..." to discard changes in working directory)
        modified:   gradle/wrapper/gradle-wrapper.jar
        modified:   gradle/wrapper/gradle-wrapper.properties
        modified:   gradlew
        modified:   gradlew.bat
    

    For my usage, I'll simply commit these changes in my own branch.

    0 讨论(0)
  • 2020-12-07 01:15

    If you don't want to downgrade your JDK distribution, you can use one of gradle wrapper's snapshots, which seems to work for many people (for me as well)

    Source of the solution: https://github.com/gradle/gradle/issues/8681#issuecomment-524039994

    To use the snapshot choose one of the files available here: https://services.gradle.org/distributions-snapshots/, head up to your PROJECT_ROOT/gradle/wrapper/gradle-wrapper.properties file and put zip file address as a value of distributibutionUrl

    0 讨论(0)
提交回复
热议问题