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-wrapper.propertiesでgradleバージョンを変更することです。6以降のGradleバージョンを設定できます

または

(Macの場合)[設定]> [ビルド、実行、展開]> [グラドル]に移動します

(Windows)ファイル>設定>ビルド、実行、展開> Gradle

次に、セクションGradleの下で、下の図に示すようにGradleとJavaを選択できますここに画像の説明を入力してください

Gradleを個別にインストールして、指定されたパスを使用することもできます。ただし、内部JDKまたはプロジェクトJVMには、gradle-wrapper.propertiesファイルとGradle JVMを使用することをお勧めします。これにより、JDK 13をアンインストールして、ダウングレードしたJDK11またはJDK12をインストールする必要がなくなります。

Android Studioでこのオプションが見つからない場合は、JDKをダウングレードするか、最初のオプションを使用してください。


3

このエラーを修正するために私が入ったアンドロイド/ Gradleの/ラッパ/ gradle-wrapper.propertiesファイルとに設定したdistributionUrl修正のGradle-5.5のGradle-6.0。これは私が現在使用しているGradleのバージョンですが、何らかの理由で6.2ディストリビューションを認識しません。これはバージョンに対応しているはずであると考えましたが、明らかにそうではありません。

以前: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 wrapperのスナップショットの1つを使用できます。これは、多くの人に(私にとっても)機能するようです。

ソリューションのソース:https : //github.com/gradle/gradle/issues/8681#issuecomment-524039994

スナップショットを使用するには、https//services.gradle.org/distributions-snapshots/で入手可能なファイルの1つを選択し、PROJECT_ROOT/gradle/wrapper/gradle-wrapper.propertiesファイルに移動して、zipファイルのアドレスをdistributibutionUrl


1
これで、Java 13とGradleの両方を試すことができます:)小さな追加:Gradle 6.0のRCディストリビューションがあり、これは古いスナップショットよりも安定しているはずです:services.gradle.org/distributions/gradle-6.0 -rc-1-bin.zip
Pieter De Bie

0

AdoptOpenJDK 13から14にアップグレードすると、Androidプロジェクトが正常にビルドされます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.