问题描述
在IntelliJ IDEA中使用try-with-resources语句,提示“Try-with-resources are not supported at language level 5”(红色波浪线处)
解决方案
根据字面意思,判断问题应该出在IDEA扫描源码时使用了java5编译器的规范,而众所周知try-with-resources是java7才开始引入的,固然会报错。
现在修改IDEA在源码扫描时采用的规范:
点击“File”—>“Project Structure”—>左侧"Modules"—>右侧"Sources"标签—>“Language Level”:
我这边很明显是“5”,现改为8:
修改应用后,报错消失