IntelliJ error - java: try-with-resources is not s

2019-01-19 00:45发布

问题:

Under File -> Project Structure -> SDKs i have 1.7 jdk but i still get this error:

added.java: try-with-resources is not supported in -source 1.6 (use -source 7 or higher to enable try-with-resources)

I have restarted IDE but to no avail

回答1:

Newer JVMs allow you to compile your code using compiler versions of lower JVM versions. For example, JDK 1.7 will allow you to compile your code using the 1.5 compiler.

See the "Cross compilation section" here http://docs.oracle.com/javase/7/docs/technotes/tools/windows/javac.html

What you need to do in Intellij, is to go to File -> Project Structure -> Project and select the "Project SDK" as 1.7 and the "Project Language Level" as 7.0



回答2:

Had to click on the 'error bulb' icon (or Alt+Enter) and select option to enable load multi-catch, try with resources, diamond ... and then reload and restart IDE.



回答3:

IntelliJ IDEA allows to set the language level on a project basis as well as on on module basis. If you have set the language level to Java 7 or higher on the project level, and are still getting this error message, right click on the module, select "Open module settings". Make sure the language level for the module is set to "Project default", or if for one reason, you want to set it specifically, it should be at least Java 7.



回答4:

I had the same problem with IntelliJ 13. You have to set the language level, either for the entire project or individual modules, on the "General Settings for Project" dialog. See IntelliJ IDE gives error when using Try-Catch with Resources for the complete answer.