问题描述
我正在使用带有gradle的springboot,并且试图在控制器中执行以下代码。
List<String> planets
= List.of("Mercury","Venus","Earth","Mars","Jupiter","Saturn","Uranus","Neptune");
编译时出现以下错误
错误:找不到符号 = List.of(“ Mercury”,“ Venus”,“ Earth”,“ Mars”, ^符号:(String,String,String,String,String,String,String,String,String)的方法
位置:界面列表
我的gradle文件有
sourceCompatibility ='1.8'
我确实知道它具有Java 9功能,但不确定为什么编译失败
解决方法
List.of
不是Java 9功能,它是JDK 9中添加的方法。如果您使用的是JDK 8,则它不包含此方法,因此无法针对它。
简而言之-使用较新的JDK(将兼容级别设置为9,这样就不会创建只能与较新JDK一起使用的有效Java 8程序的混合)。