文章来自:http://blog.youkuaiyun.com/intbird
我的一个demo:https://github.com/intbird/ANDIntbirdLamdba
操作步骤:
提供一个教程指导:https://github.com/evant/gradle-retrolambda
1:define java_home
define JAVA_HOME, can,t empty char at ‘=’; //TUDO:i dont know why i must use java8_home as default java_home,if not occurs major minor version 52.0 error;
我的英文本意:
1,将项目的project变更为java8的环境变量 或者 将profile的JAVA_HOME变量为java8的环境变量,如果看到下面这句,记得上面那句:major minor version 52.0 error;
export JAVA6_HOME=/Library/Java/JavaVirtualMachines/jdk1.6.0.jdk/Contents/Home
export JAVA7_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home
export JAVA8_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_60.jdk/Contents/Home
export JAVA_HOME=$JAVA8_HOME
step 2: gradle:
#1. project gradle config;
dependencies {
classpath 'com.android.tools.build:gradle:1.3.0'
classpath 'me.tatarka:gradle-retrolambda:3.2.3'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
#2. app gradle config;
apply plugin: 'com.android.application'
apply plugin: 'me.tatarka.retrolambda'
***
***
android {
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
#3.project sdk if need;
retrolambda {
jdk System.getenv("JAVA8_HOME")
javaVersion JavaVersion.VERSION_1_6
jvmArgs '-arg1', '-arg2'
defaultMethods false
incremental true }
step 3:
TextView textView = (TextView)findViewById(R.id.tv_hello);
textView.setOnClickListener( v -> Toast.makeText(getApplicationContext(), "MainActivity", Toast.LENGTH_LONG).show());
//can use plugin android-postfix-plugin-2.0.0__3_ in ,quick toast;