记一次更新Retrofit版本后发起网络请求程序崩溃

错误日志如下:

java.lang.NoSuchMethodError: No static method metafactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; in class Ljava/lang/invoke/LambdaMetafactory; or its super classes (declaration of ‘java.lang.invoke.LambdaMetafactory’ appears in /apex/com.android.runtime/javalib/core-oj.jar)

原因:
新版本的 Retrofit 使用到了JAVA8 的Lambda表达式,项目中需要使用JAVA1.8,否则无法正常使用。

点击File -> Project Structure->Modules -> Properties 设置Source Compatibility和 Target Compatibility两项为 JDK8就可以了