有没有办法在使用Retrolambda时禁用以下警告:
需要Jack支持Java 8语言特性。
因为它还没有编译我们的项目,所以我现在不想要Jack的支持。
有没有办法在使用Retrolambda时禁用以下警告:
需要Jack支持Java 8语言特性。
因为它还没有编译我们的项目,所以我现在不想要Jack的支持。
Android Studio
在您的应用程序 gradle 中添加以下代码,然后进行同步
// ----- add
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'me.tatarka:gradle-retrolambda:3.2.4'
}
}
repositories {
mavenCentral()
}
// ----- end
apply plugin: 'com.android.application'
apply plugin: 'me.tatarka.retrolambda' // ----- add
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
//----add
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
build.gradle
文件中删除以下配置:
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
retrolambda
插件会自动处理这个问题,并使用正确的源代码和目标兼容性设置来设置 Java 编译器任务。build.gradle
中有这些行,但我仍然得到了这个信息 - 也许我需要更新 retrolambda。 - Lovisapply plugin: 'com.android.application'
android {
compileSdkVersion 25
buildToolsVersion "25.0.3"
defaultConfig {
applicationId "io.github.rxandroid"
minSdkVersion 15
targetSdkVersion 25
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
jackOptions {
enabled true
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:25.3.1'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
testCompile 'junit:junit:4.12'
compile 'io.reactivex.rxjava2:rxandroid:2.0.1'
compile 'io.reactivex:rxjava:1.3.0'
compile 'com.jakewharton:butterknife:8.6.0'
compile 'com.squareup.retrofit2:retrofit:2.3.0'
compile 'com.squareup.retrofit2:converter-gson:2.2.0'
compile 'com.squareup.retrofit2:adapter-rxjava:2.2.0'
}
jackOptions { enabled true }
当Android Studio 3.0稳定版本发布后,你可以从项目中删除retrolambda,因为它已经在那里完美地工作了! - miszmaniac