problemi di lancio di Android. File principale di classe non supportato versione 57


15

Ho seguito il Mac Android per iniziare, ma quando corro-Android non riesce con i seguenti errori. Ho provato a trovare la risposta online ma non riesco a trovare una soluzione. Mi sono assicurato di avere java jdk8 corretto installato sul mio computer, ma sto ancora ottenendo questo errore. Ogni consiglio è molto apprezzato!

> 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)

Ambiente di sviluppo: Mac os x 10.15


2
Ho anche lo stesso errore, con il seguente messaggioCould not compile settings file '/Users/.../android/settings.gradle'.
semihcosu,

Risposte:


14

Soffro lo stesso problema quando corro gradle build. Secondo la ricerca di Google e Github. Ho trovato che la gradleversione corrente (5.xx) non supporta jdk 13. Infine, la versione 6.x la supporta, ma non è stata rilasciata, quindi devo eseguire il downgrade della versione jdk a 12.x.

Esegui il downgrade di java a 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

Ho eseguito il downgrade da Java 13 a una versione precedente e ha funzionato!
jumping_monkey,

3

Questo perché la tua versione JDK non supporta la versione Gradle del tuo progetto. Il grado 5 non è supportato in jdk-13. La soluzione migliore è quella di cambiare la versione gradle in gradle-wrapper.properties. Puoi impostare qualsiasi versione gradle successiva alla 6,

O

Devo (su Mac) Preferenze> Build, Execution, Deployment> Gradle

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

Quindi nella sezione Gradle Puoi scegliere Gradle e Java come mostrato nella figura sottoinserisci qui la descrizione dell'immagine

È inoltre possibile installare la pendenza separatamente e utilizzare il percorso specificato. Tuttavia, ti consiglio di utilizzare il file gradle-wrapper.properties e Gradle JVM in JDK interno o Project JVM. In questo modo non è necessario disinstallare JDK 13 e installare JDK11 o JDK12 declassati

Se non trovi questa opzione in Android Studio, esegui il downgrade del tuo JDK o usa la prima opzione.


3

Per correggere questo errore sono andato nel file android / gradle / wrapper / gradle-wrapper.properties e ho modificato il distributionUrl che era impostato su gradle-5.5 a gradle-6.0 . Per qualche motivo non riconosce la distribuzione 6.2, anche se questa è la versione di Gradle in cui mi trovo attualmente. Ho pensato che questo avrebbe dovuto corrispondere alla versione ma apparentemente no.

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

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

Fammi sapere se questo ha funzionato per te.


Grazie! Questo era il mio problema Usando ignite-cli e il mio progetto nativo reagire.
Jamie S

1

Se non desideri eseguire il downgrade della tua distribuzione JDK, puoi utilizzare una delle istantanee di Gradle Wrapper, che sembra funzionare per molte persone (anche per me)

Fonte della soluzione: https://github.com/gradle/gradle/issues/8681#issuecomment-524039994

Per utilizzare lo snapshot, scegli uno dei file disponibili qui: https://services.gradle.org/distributions-snapshots/ , vai al tuo PROJECT_ROOT/gradle/wrapper/gradle-wrapper.propertiesfile e inserisci l'indirizzo del file zip come valore didistributibutionUrl


1
Bene, questo ti permette di giocare con java 13 e Gradle :) Una piccola aggiunta: c'è una distribuzione RC di grado 6.0, questo dovrebbe essere più stabile di una vecchia istantanea: services.gradle.org/distributions/gradle-6.0 -rc-1-bin.zip
Pieter De Bie,

0

Ho eseguito l'aggiornamento da AdoptOpenJDK 13 a 14 e ora i miei progetti Android vengono compilati correttamente.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.