[英]Try_catch block not supported android studio language level 8?
[英]Try With Resources Not Supported at This Language Level
我正在使用IntelliJ IDEA Ultimate 2016.2.1,将Project SDK设置为我的1.8版本,将Project Language Level设置为8,将模块SDK设置为我的1.8版本,将JDK主路径设置为/Library/Java/JavaVirtualMachines/jdk1.8.0_91。 JDK /内容/首页。
我重新启动了IDE。
尽管如此,我对这种语言级别不支持的资源尝试提出了丑陋的警告。 我没有在IntelliJ中使用低于语言级别8,所以这不能归因于没有刷新的东西。 我正在使用gradle构建配置 - 清理构建并尝试运行 - 说我正在运行1.5但我无法弄清楚提到1.5的位置。 在build.gradle我正在使用:
apply plugin: 'java'
apply plugin: 'application'
sourceCompatibility = 1.8
我应该提交IntelliJ错误还是我还缺少某些东西?
编辑:
在IntelliJ系统之外的termianl中运行gradle运行良好。 所以问题是IntelliJ相关。
我发现IntelliJ有时会将模块默认为与设置项目SDK不匹配的语言级别。 尝试右键单击项目资源管理器中的模块,然后选择模块设置,然后选择语言级别选项卡。 如果将其设置为Java 5,则将其更新为Java 8。
确保您的try-with-resources正在使用正确的语义。 例如,这个:
try (new BufferedReader(request.getReader())) {
}
将产生相同的错误消息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.