Śledziłem uruchamianie mac Androida, ale kiedy uruchamiam Androida, nie działa z następującymi błędami. Próbowałem znaleźć odpowiedź online, ale nie mogę znaleźć rozwiązania. Upewniłem się, że na moim komputerze jest zainstalowana poprawna Java JDK8, ale nadal otrzymuję ten błąd. Wszelkie porady są mile widziane!
> 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)
Środowisko deweloperskie: Mac OS X 10.15
react-native
rtwhite
źródło
źródło
Could not compile settings file '/Users/.../android/settings.gradle'.
Odpowiedzi:
Ten sam problem występuje po uruchomieniu
gradle build
. Według wyszukiwania z Google i github. Znalazłem, żegradle
bieżąca wersja (5.xx) nie obsługuje jdk 13. Wreszcie, wersja 6.x obsługuje ją, ale nie została wydana, więc muszę obniżyć wersję jdk do 12.x.Zmień java na 12 https://www.jverdeyen.be/mac/downgrade-brew-cask-application/
źródło
Wynika to z faktu, że Twoja wersja JDK nie obsługuje wersji Gradle twojego projektu. Stopień 5 nie jest obsługiwany w jdk-13. Najlepszym rozwiązaniem jest zmiana wersji gradle w gradle-wrapper.properties. Możesz ustawić dowolną wersję stopni późniejszą niż 6,
Lub
Przejdź do (na Macu) Preferencje> Kompilacja, wykonanie, wdrożenie> Stopień
(Windows) Plik> Ustawienia> Kompilacja, wykonanie, wdrożenie> Stopień
Następnie w sekcji Gradle możesz wybrać Gradle i Java, jak pokazano na obrazku poniżej
Możesz także zainstalować gradle osobno i użyć określonej ścieżki. Zalecam jednak użycie pliku gradle-wrapper.properties i Gradle JVM do wewnętrznego JDK lub Project JVM. W ten sposób nie musisz odinstalowywać JDK 13 i instalować starszej wersji JDK11 lub JDK12
Jeśli nie znajdziesz tej opcji w Android Studio, zmień JDK na starszą wersję lub skorzystaj z pierwszej opcji.
źródło
Aby naprawić ten błąd, wszedłem do pliku android / gradle / wrapper / gradle-wrapper.properties i zmodyfikowałem plik dystrybucjiUrl, który został ustawiony na gradle-5.5 na gradle-6.0 . Z jakiegoś powodu nie rozpoznaje dystrybucji 6.2, mimo że jest to wersja klasy, w której aktualnie jestem. Uznałem, że to powinno odpowiadać wersji, ale najwyraźniej nie.
Przed: dystrybucjaUrl = https: //services.gradle.org/distribution/gradle-5.5-all.zip
Po: DistributionUrl = https: //services.gradle.org/distribution/gradle-6.0-all.zip
Daj mi znać, czy to zadziałało.
źródło
Jeśli nie chcesz obniżyć swojej dystrybucji JDK, możesz użyć jednej z migawek opakowania stopni, która wydaje się działać dla wielu osób (również dla mnie)
Źródło rozwiązania: https://github.com/gradle/gradle/issues/8681#issuecomment-524039994
Aby użyć migawki, wybierz jeden z plików dostępnych tutaj: https://services.gradle.org/distribution-snapshots/ , przejdź do swojego
PROJECT_ROOT/gradle/wrapper/gradle-wrapper.properties
pliku i podaj adres pliku zip jako wartośćdistributibutionUrl
źródło
Uaktualniłem z AdoptOpenJDK 13 do 14, a moje projekty na Androida teraz budują się pomyślnie.
źródło