今天编译 Android 时出现以下错误
Static interface methods are only supported starting with Android N
查了一下,出现这个错误的原因是
- Android 默认的编译器不支持静态接口方法,而静态接口方法只有 Java8
- **Android N 要求 JDK 版本至少为 1.8
修复方法也很简单,就是指定编译器为 Java8
在 app
目录下的 build.gradle
( Module:app) 中的 android
中添加以下内容
compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 }
例如我的
千万不要拷贝下面的内容,这个只是展示而已
apply plugin: 'com.android.application' apply plugin: 'kotlin-android-extensions' apply plugin: 'kotlin-android' android { compileSdkVersion 28 defaultConfig { applicationId "com.joymvp.ws" minSdkVersion 19 targetSdkVersion 28 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } } dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation 'com.android.support:appcompat-v7:28.0.0' implementation 'com.android.support.constraint:constraint-layout:1.1.3' implementation 'com.squareup.okhttp3:okhttp:3.13.1' testImplementation 'junit:junit:4.12' androidTestImplementation 'com.android.support.test:runner:1.0.2' androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2' } repositories { mavenCentral() }
目前尚无回复