Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Eclipse Updating the compiler compliance to 1.7

I am having some trouble updating the compiler compliance of my eclipse workspace (I am actually using RTC, but it is essentially eclipse). Currently, it uses a jdk of 1.6 so I can change the JDK compliance to a limit of 1.6.

However, I am using jdk 1.7 for my project -I have added it as a JRE -

preferences --> Java --> Installed JRE --> added jre with the jdk 1.7 directory.

However, even though I use this as the default JRE it does not allow me to change the compiler compliance level to 1.7.

I am guessing that there is something I am missing.

Any help would be greatly appreciated

like image 536
Pectus Excavatum Avatar asked Aug 27 '13 10:08

Pectus Excavatum


3 Answers

The Compiler compliance level is Version Dependent in eclipse. If you are using Eclipse 3.7 or lower then you won't get 1.7 compliance. Use Eclipse JUNO or higher.

For more on JDT Core 7 and its release related information

UPDATE:

Even eclipse 3.7.1 version supports Java 7 features and compliance level.

like image 187
Narendra Pathai Avatar answered Oct 29 '22 10:10

Narendra Pathai


I use eclipse 3.6.1 with installed JRE 1.7 and I was able to set Java compliance level to 1.7 (on the workspace level - preferences).
In some workspaces I could do that right in the Preferences, in some workspaces I had to do that in a "hard way" updating several properties in the file: .metadata\.plugins\org.eclipse.core.runtime\.settings\org.eclipse.jdt.core.prefs
Here are changed lines: org.eclipse.jdt.core.compiler.compliance=1.7 org.eclipse.jdt.core.compiler.source=1.7 org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7

Maybe it was just enough to change the line with "org.eclipse.jdt.core.compiler.compliance" property , but I did all three for the sake of completeness and consistency.

like image 26
Maciej Avatar answered Oct 29 '22 10:10

Maciej


If you are using eclipse 3.7 then you add 1.7 into compliance level by following way:-

  • right click on project
  • click on Build path->Configure Build Path->project Facets
  • there you can see one link 'convert to faceted form'. click on it
  • mark java and select verion 1.7 from dropdown which is present in front of java tab
  • click on apply and click ok
  • now you can see that 1.7 version is appeared in compliance level

Note:- Before above step you have to add JRE System library in Build path for jdk1.7

like image 39
swati yedle Avatar answered Oct 29 '22 10:10

swati yedle