错误日志:
java.lang.UnsupportedClassVersionError: xxx has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0
错误原因:低版本的Jdk无法运行高版本Jdk产生的class文件。
最近因为Android Studio升级,JDK也升级到了11。并且在这个环境中开发一个gradle plugin组件,编译并且测试demo中都运行正常。但是在集成到正式项目中时,因为正式项目Gradle中使用的还是JDK1.8,所以报了上面的错误。
即:在用JDK1.8的环境运行JDK11编译产生的class文件是不允许的。
解决办法:
1、升级项目JDK环境到11
2、将原来的插件JDK环境降低到1.8重新打包发布
考虑到我们开发的插件不应该强制要求项目升级环境配置,所以更应该优先采用方法2。
总结:开发插件时最好使用低版本的JDK环境编译,以提高兼容性,推荐JDK1.6。
博客讲述了在升级Android Studio及JDK至11后,编译的gradle plugin在JDK 1.8环境下运行报错的情况。错误原因是高版本JDK编译的class文件无法在低版本JDK中运行。解决方案包括升级项目JDK或降级plugin的JDK版本。考虑到兼容性,作者建议开发者使用低版本JDK(如1.6)进行插件编译。
7022

被折叠的 条评论
为什么被折叠?



