既存のアプリケーションを使用して、react-nativeを0.59.5から0.60.4にアップグレードしています。しかし、以下のような問題に直面しています
* Where:
Build file '/home/bingl/Projects/blackstar/frontend/Android/app/build.gradle'
* What went wrong:
Could not compile build file '/home/bingl/Projects/blackstar/frontend/Android/app/build.gradle'.
> 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(ClassNodeReso
そして私のbuild.gradleは
Android {
compileSdkVersion 28
buildToolsVersion "28.0.3"
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
defaultConfig {
applicationId "com.frontend"
minSdkVersion 16
targetSdkVersion 28
versionCode 1
versionName "1.0"
}
splits {
abi {
reset()
enable enableSeparateBuildPerCPUArchitecture
universalApk false // If true, also generate a universal APK
include "armeabi-v7a", "x86", "arm64-v8a", "x86_64"
}
}
buildTypes {
release {
minifyEnabled enableProguardInReleaseBuilds
proguardFiles getDefaultProguardFile("proguard-Android.txt"), "proguard-rules.pro"
}
}
// applicationVariants are e.g. debug, release
applicationVariants.all { variant ->
variant.outputs.each { output ->
// For each separate APK per architecture, set a unique version code as described here:
// http://tools.Android.com/tech-docs/new-build-system/user-guide/apk-splits
def versionCodes = ["armeabi-v7a":1, "x86":2, "arm64-v8a": 3, "x86_64": 4]
def abi = output.getFilter(OutputFile.ABI)
if (abi != null) { // null for the universal-debug, universal-release variants
output.versionCodeOverride =
versionCodes.get(abi) * 1048576 + defaultConfig.versionCode
}
}
}
私はこのエラーが何であるかについて全く手がかりがなく、あまり役立つ記事を見つけることができませんでした。私を助けてください。
Gradleは現在、openJDK-13を使用したビルドでエラーが発生しているようです。
これが Githubの問題 スレッドです。
端末で次のコマンドを実行して、システムのJavaおよびJDKバージョンのバージョンを確認します。
file /etc/alternatives/Java /etc/alternatives/javac
OR
file `which Java javac`
これにより、システム上の現在のインストールが一覧表示されます。どこかにopenjdk-13
が表示されている場合は、openjdk-8
にダウングレードする必要があります。
ダウングレードの手順については、この link を確認してください。