проблеми запуску Android. Основна версія 57 непідтримуваного файлу класу


15

Я стежив за тим, як Mac android запускався, але коли я запускаю android, він виходить з ладу з наступними помилками. Я намагався знайти відповідь в Інтернеті, але, здається, не можу знайти рішення. Я переконався, що на моїй машині встановлений правильний java jdk8, але я все одно отримую цю помилку. Будь-яка порада високо цінується!

> startup failed:
  General error during semantic analysis: Unsupported class file major version 57

  java.lang.IllegalArgumentException: Unsupported class file major version 57
        at groovyjarjarasm.asm.ClassReader.<init>(ClassReader.java:184)
        at groovyjarjarasm.asm.ClassReader.<init>(ClassReader.java:166)
        at groovyjarjarasm.asm.ClassReader.<init>(ClassReader.java:152)
        at groovyjarjarasm.asm.ClassReader.<init>(ClassReader.java:273)
        at org.codehaus.groovy.ast.decompiled.AsmDecompiler.parseClass(AsmDecompiler.java:81)
        at org.codehaus.groovy.control.ClassNodeResolver.findDecompiled(ClassNodeResolver.java:254)
        at org.codehaus.groovy.control.ClassNodeResolver.tryAsLoaderClassOrScript(ClassNodeResolver.java:192)
        at org.codehaus.groovy.control.ClassNodeResolver.findClassNode(ClassNodeResolver.java:172)
        at org.codehaus.groovy.control.ClassNodeResolver.resolveName(ClassNodeResolver.java:128)
        at org.codehaus.groovy.ast.decompiled.AsmReferenceResolver.resolveClassNullable(AsmReferenceResolver.java:59)
        at org.codehaus.groovy.ast.decompiled.AsmReferenceResolver.resolveClass(AsmReferenceResolver.java:46)
        at org.codehaus.groovy.ast.decompiled.AsmReferenceResolver.resolveNonArrayType(AsmReferenceResolver.java:81)
        at org.codehaus.groovy.ast.decompiled.AsmReferenceResolver.resolveType(AsmReferenceResolver.java:72)
        at org.codehaus.groovy.ast.decompiled.MemberSignatureParser.createMethodNode(MemberSignatureParser.java:55)
        at org.codehaus.groovy.ast.decompiled.DecompiledClassNode.lazyInitMembers(DecompiledClassNode.java:195)
        at org.codehaus.groovy.ast.decompiled.DecompiledClassNode.getDeclaredMethods(DecompiledClassNode.java:121)
        at org.codehaus.groovy.ast.ClassNode.getMethods(ClassNode.java:912)
        at org.codehaus.groovy.ast.ClassNode.tryFindPossibleMethod(ClassNode.java:1280)
        at org.codehaus.groovy.control.StaticImportVisitor.transformMethodCallExpression(StaticImportVisitor.java:252)
        at org.codehaus.groovy.control.StaticImportVisitor.transform(StaticImportVisitor.java:112)
        at org.codehaus.groovy.ast.ClassCodeExpressionTransformer.visitExpressionStatement(ClassCodeExpressionTransformer.java:144)
        at org.codehaus.groovy.ast.stmt.ExpressionStatement.visit(ExpressionStatement.java:42)
        at org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitClassCodeContainer(ClassCodeVisitorSupport.java:110)
        at org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitConstructorOrMethod(ClassCodeVisitorSupport.java:121)
        at org.codehaus.groovy.ast.ClassCodeExpressionTransformer.visitConstructorOrMethod(ClassCodeExpressionTransformer.java:55)
        at org.codehaus.groovy.control.StaticImportVisitor.visitConstructorOrMethod(StaticImportVisitor.java:88)
        at org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitConstructor(ClassCodeVisitorSupport.java:128)
        at org.codehaus.groovy.ast.ClassNode.visitContents(ClassNode.java:1099)
        at org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitClass(ClassCodeVisitorSupport.java:54)
        at org.codehaus.groovy.control.StaticImportVisitor.visitClass(StaticImportVisitor.java:82)
        at org.codehaus.groovy.control.CompilationUnit$14.call(CompilationUnit.java:717)
        at org.codehaus.groovy.control.CompilationUnit.applyToPrimaryClassNodes(CompilationUnit.java:1095)
        at org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:649)
        at org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:627)
        at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:604)
        at groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:390)
        at groovy.lang.GroovyClassLoader.access$300(GroovyClassLoader.java:89)
        at groovy.lang.GroovyClassLoader$5.provide(GroovyClassLoader.java:330)
        at groovy.lang.GroovyClassLoader$5.provide(GroovyClassLoader.java:327)
        at org.codehaus.groovy.runtime.memoize.ConcurrentCommonCache.getAndPut(ConcurrentCommonCache.java:147)
        at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:325)
        at org.gradle.groovy.scripts.internal.DefaultScriptCompilationHandler.compileScript(DefaultScriptCompilationHandler.java:133)
        at org.gradle.groovy.scripts.internal.DefaultScriptCompilationHandler.compileToDir(DefaultScriptCompilationHandler.java:93)
        at org.gradle.groovy.scripts.internal.BuildOperationBackedScriptCompilationHandler$2.run(BuildOperationBackedScriptCompilationHandler.java:54)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:402)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:394)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:165)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:250)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:158)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:92)
        at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
        at org.gradle.groovy.scripts.internal.BuildOperationBackedScriptCompilationHandler.compileToDir(BuildOperationBackedScriptCompilationHandler.java:51)

Середовище розробників: Mac os x 10.15


2
Я також маю ту саму помилку із наступним повідомленнямCould not compile settings file '/Users/.../android/settings.gradle'.
semihcosu

Відповіді:


14

Я страждаю тим же питанням, коли бігаю gradle build. За даними пошуку від google та github. Я знайшов, що gradleпоточна версія (5.xx) не підтримує jdk 13. Нарешті, версія 6.x підтримує її, але вона не була випущена, тому мені доведеться зменшити версію jdk до 12.x.

Пониження рівня Java до 12 https://www.jverdeyen.be/mac/downgrade-brew-cask-application/

brew cask uninstall adoptopenjdk # uninstall jdk version 13.x
brew cask install https://raw.githubusercontent.com/caskroom/homebrew-cask/025e5b6c3ad66ac2a2da75abb91d109d68dd4f6d/Casks/adoptopenjdk.rb

Я перейшов з Java 13 на нижчу версію, і вона спрацювала!
jumping_monkey

3

Це тому, що версія JDK не підтримує версія Gradle вашого проекту. Gradle 5 не підтримується в jdk-13. Найкраще рішення - змінити свою версію gradle на gradle-wrapper.properties. Ви можете встановити будь-яку версію gradle пізніше 6,

Або

Перейшов до налаштувань (на Mac)> Створення, виконання, розгортання> Gradle

(Windows) Файл> Налаштування> Збірка, виконання, розгортання> Gradle

Потім у розділі Gradle Ви можете вибрати Gradle та Java, як показано на малюнку нижчевведіть тут опис зображення

Ви також можете встановити gradle окремо і використовувати вказаний шлях. Однак я рекомендую використовувати файл gradle-wrapper.properties та Gradle JVM для внутрішнього JDK або Project JVM. Таким чином, вам не доведеться видаляти JDK 13 та встановлювати знижені JDK11 або JDK12

Якщо ви не знайдете цю опцію в Android Studio, оновіть JDK або скористайтеся першою опцією.


3

Щоб виправити цю помилку, я зайшов у файл android / gradle / wrapper / gradle-wrapper.properties і змінив розподілUrl, який було встановлено з gradle-5.5 на gradle-6.0 . Чомусь він не розпізнає розподіл 6.2, хоча це версія gradle, на якій я зараз перебуваю. Я подумав, що це повинно відповідати версії, але, мабуть, ні.

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

Після: distributionUrl = https: //services.gradle.org/distributions/gradle-6.0-all.zip

Дайте мені знати, чи це працювало для вас.


Дякую! Це була моя проблема. Використовуючи ignite-cli та мій власний проект реагування.
Джеймі S

1

Якщо ви не хочете знижувати дистрибутив JDK, ви можете скористатись одним із знімків обгортки gradle, який, здається, працює для багатьох людей (і для мене)

Джерело рішення: https://github.com/gradle/gradle/isissue/8681#issuecomment-524039994

Щоб скористатися знімком, виберіть один із доступних тут файлів: https://services.gradle.org/distributions-snapshots/ , головуйте до свого PROJECT_ROOT/gradle/wrapper/gradle-wrapper.propertiesфайлу та введіть адресу zip у якості значенняdistributibutionUrl


1
Приємно, це дозволяє вам пограти як з java 13, так і з Gradle :) Невелике доповнення: є розподіл RC градусів 6.0, це має бути стабільніше, ніж старий знімок: services.gradle.org/distributions/gradle-6.0 -rc-1-bin.zip
Пітер Де Бі

0

Я оновив з AdoptOpenJDK 13 до 14, і мої проекти Android зараз успішно будуються.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.