Why won't Eclipse switch the compiler to Java 8? - java

I checked out a Java project from SVN in Eclipse and realized that it requires Java 8 because it uses lambdas etc. I installed the Eclipse addon for Java 8 and restarted Eclipse and and have the project set up like so:
I noticed that near the bottom, it says that the default compiler compliance is 1.7, so I went into org.eclipse.jdt.core.prefs and set the compiler compliance variable to 1.8, as per
this answer. However, in Project -> Preferences -> Java Compiler, it still shows up as:
I have set the JRE in Project -> Java Build Path:
Yet the compiler refuses to compile lambda expressions - I get an error that looks like what I would get if I went ahead and typed it into Java 7.
This is the version of Eclipse I'm using:
Version: Kepler Service Release 1
Build id: 20130919-0819
Is the only way to solve this to install a fresh version of Eclipse or am I missing something in the configuration?

Two things:
First, JRE is not the same as the JDK. If you do have the JDK, you need to configure eclipse to point to that in your settings.
Second, in your screenshot above, your compiler compliance level is set to 1.7. This will treat all your code as if it's using Java 1.7. Change this to 1.8 to fix your error.
You will need to have Eclipse Luna in order to get support for Java 8, but you can add it to Kepler SR2 if you want. I'd try with Luna and the above suggestions before you go any further. See this reference.
Once you get Luna, your JAVA_HOME variable should be enough to get Eclipse to recognize JDK 8.
If you want to specify an additional JDK, you can add a new Java System Library by going to:
Project -> Properties -> Java Build Path -> Libraries -> Add Library -> Java System Library
and navigating to a valid location for the JDK 8.
You can download your platform's JDK 8 here

It cause eclipse kepler SR1 does not support new Java™ 8 language enhancements like lambda expression.
From information here: http://www.eclipse.org/downloads/java8/
I think you should use kepler SR2 with support plugin, or change to Eclipse Luna.
Updated link 16/09/2016: https://wiki.eclipse.org/JDT/Eclipse_Java_8_Support_For_Kepler

I had the same problem even though I had:
a freshly downloaded JDK 1.8.0
JAVA_HOME is set
java -version on command line reports 1.8
Java in control panel is set to 1.8
downloaded Eclipse Mars
Eclipse only let me choose a compiler compliance level op to 1.7 in the compiler preferences, even though my installed JRE is 1.8.0. I also couldn't see a 1.8 in the Execution Environments underneath Installed JREs, only a JavaSE-1.7 (which I haven't even got installed!). When I clicked on that, it shows "jdk1.8.0" as a compatible JRE, so I selected that, but still no change.
Then I unzipped Eclipse Mars into a brand new directory, created a new project, and now I can select 1.8, hurrah! That greatly reduced the "Duplicate methods named spliterator..." errors I was getting when compiling my code under Java 1.8, however, there is still one left:
Duplicate default methods named spliterator with the parameters () and () are inherited from the types List and Set.
However, that's likely because I'm extending AbstractList and implementing Set, so I've fixed that for now by removing the implements Set because it doesn't really add anything in my case (other than signifying that my collection has only unique elements)

Old question, but posting the answer incase it helps someone.
Already build path was configured to use JDK 1.2.81
However, build was failing with the error below:
lambda expressions are not supported in -source 1.5
[ERROR] (use -source 8 or higher to enable lambda expressions)
In the latest Eclipse (Photon), adding the below entry to pom.xml worked.
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.source>1.8</maven.compiler.source>
</properties>

First of all you should get JdK 8.
if you have Jdk installed.
you should set its path using cmd prompt or system variables.
sometimes it can happen that the path is not set due to which eclipse is unable to get the properties for jdk.
Installing latest ecipse luna can solve your problem.
i have indigo and luna. i can set 1.8 in luna but 1.7 in indigo.Eclipse luna
You can check the eclipse site. it says that the eclipse luna was certainly to associate the properties for jdk 8.

You must install the JDT/Eclipse Java 8 Support For Kepler.
https://wiki.eclipse.org/JDT/Eclipse_Java_8_Support_For_Kepler

I had the similar problem with eclipse kepler.I have followed these steps to resolve it
Go to Help in Eclipse and Open Eclipse Market Place option.
Search for jdk 1.8 for kepler
Install the required plugin.
Restart the eclipse.
for reference, refer this link http://techno-terminal.blogspot.in/2016/05/jdk-18-compiler-compliance-is-not.html

This is a old topic but I just wanted to point out that I have searched enough to find that Indigo version can't be updated to S.E 1.8 here the link which is given on eclipse website to update the Execution Environment but if you try it will throw error for Indigo.
Image//wiki.eclipse.org/File:ExecutionEnvironmentDescriptionInstallation.png this is the link where the Information about execution environment is given.
https://wiki.eclipse.org/JDT/Eclipse_Java_8_Support_For_Kepler This shows the step by step to update Execution environment.
I have tried to update Execution environment and I got the same error.

Assuming you have already downloaded Jdk 1.8. You have to make sure your eclipse version supports Jdk 1.8. Click on "Help" tab and then select "Check for Updates". Try again.

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.6.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>

First install the JDK1.8 set to Path
Open Eclipse and Open Eclipse Market Place option.
Search for jdk 1.8 for kepler
Install the required plugin.
Restart the eclipse.
Change compiler level to 1.8 from preferences.
If still there is an error then click on the file and change the compiler setting explicitly to Jdk 1.8

Related

java 8 support for Eclipse Indigo [duplicate]

I just read How to have Eclipse use JDK8 to compile a project?
What i added jdk8 to eclipse as,
From the answers of How to have Eclipse use JDK8 to compile a project?
I tried to Update the JDT/Core, JDT/UI bundles from http://dist.springsource.com/snapshot/TOOLS/java8/e43
But it shows error as,
"Eclipse Java Development Tools Patch for Java 8 Support (BETA)" is not applicable to the current configuration and will not be installed.
"Eclipse Plug-in Development Environment Patch for Java 8 Support (BETA)" is not applicable to the current configuration and will not be installed.
How Can i fix it ?
I can say that Java 1.8 does in fact work with Eclipse Luna ( the beta version released around March 17, 2014) or later. I tried it and it was good.
Also, I noticed that in the Eclipse Marketplace, there are now plugins to install functionality into Kepler to support JDK1.8. I haven't tried the plugin myself though.
This is a old topic but I just wanted to point out that I have searched enough to find that Indigo version can't be updated to S.E 1.8 here the link which is given on eclipse website to update the Execution Environment but if you try it will throw error for Indigo.
Here is the link where the Information about execution environment is given.
This shows the step by step to update Execution environment.
I have tried to update Execution environment and I got the same error.

Problems with JButton [duplicate]

I am getting the following error after importing a project in Eclipse:
The type java.lang.Object cannot be resolved. It is indirectly referenced from required .class files
However, I have set the path as C:\Program Files\Java\jdk1.6.0_41 in Eclipse Kepler, through Window » Preferences » Java » Installed JREs.
This is an annoying Eclipse Bug which seems to bite now and then. See http://dev-answers.blogspot.de/2009/06/eclipse-build-errors-javalangobject.html for a possible solution, otherwise try the following;
Close the project and reopen it.
Clean the project (It will rebuild the buildpath hence reconfiguring with the JDK libraries)
OR
Delete and Re-import the project and if necessary do the above steps again.
The better cure is to try NetBeans instead of Eclipse :-)
The following steps could help:
Right-click on project » Properties » Java Build Path
Select Libraries tab
Find the JRE System Library and remove it
Click Add Library... button at right side » Add the JRE System Library (Workspace default JRE)
This happened to me when I imported a Java 1.8 project from Eclipse Luna into Eclipse Kepler.
Right click on project > Build path > configure build path...
Select the Libraries tab, you should see the Java 1.8 jre with an error
Select the java 1.8 jre and click the Remove button
Add Library... > JRE System Library > Next > workspace default > Finish
Click OK to close the properties window
Go to the project menu > Clean... > OK
Et voilà, that worked for me.
Here is how I solved it:
In Java-ADT: Windows - Preference - Java - Installed JREs
Just add another JRE, pointing to the 'jre' folder under your JDK folder. (jre is included in the jdk). Make sure you chose the new jre.
Object class is the base class for all the classes in java, if you are missing this it means you don't have the jdk libs in your buildpath. I don't know much about Kepler but you need to make sure it points to a correct jdk for compilation and a correct jre for running your java apps.
However I have set the path as C:\Program Files\Java\jdk1.6.0_41 from
eclipse Kepler toolbar->windows->preferences->java->installed jre
You are trying to point jdk instead of jre in your preferences. toolbar->windows->preferences->java->installed jre should point to a jre and not jdk.
Have you installed a different version JRE after , while using previous version of JRE in Eclipse .
if Not than :
Right click on your project -> Build Path -> Configure Build Path
Go to 'Libraries' tab
Add Library -> JRE System Library -> Next -> Workspace default JRE (or you can Choose Alternate JRE form your System) -> Finish
if Yes than .
Right click on your project -> Build Path -> Configure Build Path
Go to 'Libraries' tab
Remove Previous Version
Add Library -> JRE System Library -> Next -> Workspace default JRE (or you can Choose Alternate JRE from your System) -> Finish
No amount of cleaning, closing/reopening the project&IDE, removing/adding the JRE in build path worked for me.
The solution I found was to remove the project from Eclipse (not from disk), remove the project's Eclipse files from the disk, and import into Eclipse again. That worked.
It is even faster if you are using Maven:
Close Eclipse (no need to remove the project)
Run mvn clean eclipse:clean eclipse:eclipse
Open Eclipse. Your project is still present and the problem should be gone.
This seems to be an Eclipse bug, though restarting Eclipse worked great for me, hope this helps somebody else too.
Edit: the next time I had this problem the solution above did not work - the problem was that the imported project I had - had the wrong java runtime set - which was not present (I had java 8 in my JRE present, but the project imported was set to Java 11, so I had to change the project java version to 8. Alternative would be to add more JRE's in the Eclipse preferences - if the project really needs a newer JRE to work)
None of the other answers worked for me. But doing this did:
Right click the project in the package explorer.
Source > Clean up...
Next > Finish
When I did this Eclipse added an import into one of my classes. I think this occurred because I saved my project with a missing import, probably rushing to get home after work.
Right click on project -->Show in Navigator
In navigator view you can see .classpath file, do delete this file and build the project. This worked for me.
PS. If you have integrated you eclipse project with some version control like perfoce/svn , then unlinking the project before you delete the .classpath will be helpful.
Another problem could be that the Android Project Build Target is not set.
Right-click the project
Choose Properties
Click Android
Tick the appropriate Project Build Target
Apply | OK
I was facing this issue with play-java application on eclipse after adding a controller,
I removed and reinstalled JRE through build path and then removed and imported my project which solved this issue automatically.
Thanks gyro.
What solved my problem was to
1) Install the jdk under directory with no spaces:
C:/Java
Instead of
C:/Program Files/Java
This is a known issue in Windows. I fixed JAVA_HOME as well
2) I java 7 and java 8 on my laptop. So I defined the jvm using eclipse.ini. This is not a mandatory step if you don't have -vm entry in your eclipse.ini. I updated:
C:/Java/jdk1.7.0_79/jre/bin/javaw.exe
Instead of:
C:/Java/jdk1.7.0_79/bin/javaw.exe
Good luck
I had the similar problem. It was a maven project with the following snippet of pom.xml.
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<release>9</release>
</configuration>
</plugin>
</plugins>
</build>
I had to change the following.
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<release>11</release>
</configuration>
</plugin>
</plugins>
</build>
If you have already installed JDK 11 and working with java 9 or java 10 as maven compiler, eclipse can not detect. Hence change the release to 11 or the actual installed version of JDK.
I had same problem in eclipse windows that I couldn't added dependant .class files from the JNI.
In order resolve the same, I ported all the code to NetBeans IDE.
Can not add all the classes files from the JNI/JNA folder in Eclipse (JAVA, Windows 7)
While we are working with tomcat 6 and jdk 1.8 versions, some of the features will not work and this error you are getting is one. you need to change the jdk version to stable version(preferable jdk 1.6 or jdk 1.8_65) in eclipse to resolve this error.
in eclipse
step 1: properties -> java build path -> jre system library(remove)
step 2: add -> jre system library -> alternate jre -> installed jre -> add -> Standard VM -> (in jre home, place jdk path) -> finish
now clean and check the project
I got this error because I have installed "Eclipse IDE for Enterprise Java Developers", I uninstalled this and installed "Eclipse IDE for Java Developers". Problem solved for me.
It's working for me after unchecking 'User '--releae option' in eclipse Java-compiler
In eclipse step 1: properties -> java Complier -> uchecking 'User '--releae option' option -> finish
Java version 13.0.1
Eclipse version : Eclipse IDE for Enterprise Java Developers.
However I have set the path as C:\Program Files\Java\jdk1.6.0_41 from eclipse Kepler toolbar->windows->preferences->java->installed jre
If you have already added JRE and still showing error. try follow
right click on your project
project->build path-> configure build path -> java build path -> libraries tab -> select JRE system library and click edit button -> If alternative JRE is selected choose workspace default JRE.
this is how my error gone.
Happend to me after I've installed some updates in eclipse but forgot to restart afterwards. So maybe restarting eclipse might help.
However trivial this might be, check your Java installation. For me, rt.jar was missing.
I found this after fiddling for half a day with Eclipse settings and getting nowhere.
Desperate, I finally decided to try compiling the project from the command line. I wasn't expecting to see anything wrong since I thought it's an Eclipse issue but to my astonishment I saw this:
Error occurred during initialization of VM
java/lang/NoClassDefFoundError: java/lang/Object
I don't know what happened to my Java installation and where did rt.jar go. Anyway this comes as a reminder to go through the fail checklist and tick all the boxes no matter how unbelievable they are. It would have saved me a lot of time.
Right click on project, select Maven -> Update project.
That should solve the issue.
In my case it was a big modular project and the 'red X' was showing only in the parent project.
I went to the parent project
Properties -> Built Path
a removed the JRE Library there, just that, no JRE Library on the parent project anymore.
None of these solutions worked for me. In my case the problem was that I had some Java code producing .java files and I had accidentally created a file called Class.java (content doesn't seem to matter). Removing the file fixed the problem.
sometimes this error happened after updating JAVA. if so go to eclipse.ini file in the same folder where eclipse existed. then change the line under -vm keyward to the new path of jre/bin folder to get the path go to programfiles -> java -> jre latest version -> bin folder copy the path and replace in line under -vm keyword.
This error message occurs when a class/java-project is unable to resolve correct JDK libraries. Say, in my primary Project A, I was getting this error. This Project A had a maven dependency for a project B. Project B pointed to JDK-11. Project A pointed to JDK-9
Correction I did : Made Project also point to JDK-11. It resolved the issue for me
For Gradle users, use eclipse plugin. I'm not using eclipse directly but jdtls on Neovim. This solves the issue for me.
build.gradle
plugins {
id 'java'
id 'eclipse'
}
Then run
gradle cleanEclipse eclipse

Eclipse Design Tab detects wrong Java

When I click on the design tab I get this error:
Incompatible Java Versions
Eclipse is running under 1.7, but this Java project has a 1.8 Java compliance level, so WindowBuilder will not be able to load classes from this project. Use a lower level of Java for the project, or run Eclipse using a newer Java version.
I've checked in window>preferences that:
>java>compiler is set to 1.8
>java>installed JREs has a 1.8 JDK as the default
Have I missed something?
looks like JAVA_HOME is set to the java 7 one, will this require a restart?
You're actually executing eclipse with Java 7, you can update JAVA_HOME to point to Java 8, and then restart eclipse (not your computer).

Java project in Eclipse: The type java.lang.Object cannot be resolved. It is indirectly referenced from required .class files

I am getting the following error after importing a project in Eclipse:
The type java.lang.Object cannot be resolved. It is indirectly referenced from required .class files
However, I have set the path as C:\Program Files\Java\jdk1.6.0_41 in Eclipse Kepler, through Window » Preferences » Java » Installed JREs.
This is an annoying Eclipse Bug which seems to bite now and then. See http://dev-answers.blogspot.de/2009/06/eclipse-build-errors-javalangobject.html for a possible solution, otherwise try the following;
Close the project and reopen it.
Clean the project (It will rebuild the buildpath hence reconfiguring with the JDK libraries)
OR
Delete and Re-import the project and if necessary do the above steps again.
The better cure is to try NetBeans instead of Eclipse :-)
The following steps could help:
Right-click on project » Properties » Java Build Path
Select Libraries tab
Find the JRE System Library and remove it
Click Add Library... button at right side » Add the JRE System Library (Workspace default JRE)
This happened to me when I imported a Java 1.8 project from Eclipse Luna into Eclipse Kepler.
Right click on project > Build path > configure build path...
Select the Libraries tab, you should see the Java 1.8 jre with an error
Select the java 1.8 jre and click the Remove button
Add Library... > JRE System Library > Next > workspace default > Finish
Click OK to close the properties window
Go to the project menu > Clean... > OK
Et voilà, that worked for me.
Here is how I solved it:
In Java-ADT: Windows - Preference - Java - Installed JREs
Just add another JRE, pointing to the 'jre' folder under your JDK folder. (jre is included in the jdk). Make sure you chose the new jre.
Object class is the base class for all the classes in java, if you are missing this it means you don't have the jdk libs in your buildpath. I don't know much about Kepler but you need to make sure it points to a correct jdk for compilation and a correct jre for running your java apps.
However I have set the path as C:\Program Files\Java\jdk1.6.0_41 from
eclipse Kepler toolbar->windows->preferences->java->installed jre
You are trying to point jdk instead of jre in your preferences. toolbar->windows->preferences->java->installed jre should point to a jre and not jdk.
Have you installed a different version JRE after , while using previous version of JRE in Eclipse .
if Not than :
Right click on your project -> Build Path -> Configure Build Path
Go to 'Libraries' tab
Add Library -> JRE System Library -> Next -> Workspace default JRE (or you can Choose Alternate JRE form your System) -> Finish
if Yes than .
Right click on your project -> Build Path -> Configure Build Path
Go to 'Libraries' tab
Remove Previous Version
Add Library -> JRE System Library -> Next -> Workspace default JRE (or you can Choose Alternate JRE from your System) -> Finish
No amount of cleaning, closing/reopening the project&IDE, removing/adding the JRE in build path worked for me.
The solution I found was to remove the project from Eclipse (not from disk), remove the project's Eclipse files from the disk, and import into Eclipse again. That worked.
It is even faster if you are using Maven:
Close Eclipse (no need to remove the project)
Run mvn clean eclipse:clean eclipse:eclipse
Open Eclipse. Your project is still present and the problem should be gone.
This seems to be an Eclipse bug, though restarting Eclipse worked great for me, hope this helps somebody else too.
Edit: the next time I had this problem the solution above did not work - the problem was that the imported project I had - had the wrong java runtime set - which was not present (I had java 8 in my JRE present, but the project imported was set to Java 11, so I had to change the project java version to 8. Alternative would be to add more JRE's in the Eclipse preferences - if the project really needs a newer JRE to work)
None of the other answers worked for me. But doing this did:
Right click the project in the package explorer.
Source > Clean up...
Next > Finish
When I did this Eclipse added an import into one of my classes. I think this occurred because I saved my project with a missing import, probably rushing to get home after work.
Right click on project -->Show in Navigator
In navigator view you can see .classpath file, do delete this file and build the project. This worked for me.
PS. If you have integrated you eclipse project with some version control like perfoce/svn , then unlinking the project before you delete the .classpath will be helpful.
Another problem could be that the Android Project Build Target is not set.
Right-click the project
Choose Properties
Click Android
Tick the appropriate Project Build Target
Apply | OK
I was facing this issue with play-java application on eclipse after adding a controller,
I removed and reinstalled JRE through build path and then removed and imported my project which solved this issue automatically.
Thanks gyro.
What solved my problem was to
1) Install the jdk under directory with no spaces:
C:/Java
Instead of
C:/Program Files/Java
This is a known issue in Windows. I fixed JAVA_HOME as well
2) I java 7 and java 8 on my laptop. So I defined the jvm using eclipse.ini. This is not a mandatory step if you don't have -vm entry in your eclipse.ini. I updated:
C:/Java/jdk1.7.0_79/jre/bin/javaw.exe
Instead of:
C:/Java/jdk1.7.0_79/bin/javaw.exe
Good luck
I had the similar problem. It was a maven project with the following snippet of pom.xml.
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<release>9</release>
</configuration>
</plugin>
</plugins>
</build>
I had to change the following.
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<release>11</release>
</configuration>
</plugin>
</plugins>
</build>
If you have already installed JDK 11 and working with java 9 or java 10 as maven compiler, eclipse can not detect. Hence change the release to 11 or the actual installed version of JDK.
I had same problem in eclipse windows that I couldn't added dependant .class files from the JNI.
In order resolve the same, I ported all the code to NetBeans IDE.
Can not add all the classes files from the JNI/JNA folder in Eclipse (JAVA, Windows 7)
While we are working with tomcat 6 and jdk 1.8 versions, some of the features will not work and this error you are getting is one. you need to change the jdk version to stable version(preferable jdk 1.6 or jdk 1.8_65) in eclipse to resolve this error.
in eclipse
step 1: properties -> java build path -> jre system library(remove)
step 2: add -> jre system library -> alternate jre -> installed jre -> add -> Standard VM -> (in jre home, place jdk path) -> finish
now clean and check the project
I got this error because I have installed "Eclipse IDE for Enterprise Java Developers", I uninstalled this and installed "Eclipse IDE for Java Developers". Problem solved for me.
It's working for me after unchecking 'User '--releae option' in eclipse Java-compiler
In eclipse step 1: properties -> java Complier -> uchecking 'User '--releae option' option -> finish
Java version 13.0.1
Eclipse version : Eclipse IDE for Enterprise Java Developers.
However I have set the path as C:\Program Files\Java\jdk1.6.0_41 from eclipse Kepler toolbar->windows->preferences->java->installed jre
If you have already added JRE and still showing error. try follow
right click on your project
project->build path-> configure build path -> java build path -> libraries tab -> select JRE system library and click edit button -> If alternative JRE is selected choose workspace default JRE.
this is how my error gone.
Happend to me after I've installed some updates in eclipse but forgot to restart afterwards. So maybe restarting eclipse might help.
However trivial this might be, check your Java installation. For me, rt.jar was missing.
I found this after fiddling for half a day with Eclipse settings and getting nowhere.
Desperate, I finally decided to try compiling the project from the command line. I wasn't expecting to see anything wrong since I thought it's an Eclipse issue but to my astonishment I saw this:
Error occurred during initialization of VM
java/lang/NoClassDefFoundError: java/lang/Object
I don't know what happened to my Java installation and where did rt.jar go. Anyway this comes as a reminder to go through the fail checklist and tick all the boxes no matter how unbelievable they are. It would have saved me a lot of time.
Right click on project, select Maven -> Update project.
That should solve the issue.
In my case it was a big modular project and the 'red X' was showing only in the parent project.
I went to the parent project
Properties -> Built Path
a removed the JRE Library there, just that, no JRE Library on the parent project anymore.
None of these solutions worked for me. In my case the problem was that I had some Java code producing .java files and I had accidentally created a file called Class.java (content doesn't seem to matter). Removing the file fixed the problem.
sometimes this error happened after updating JAVA. if so go to eclipse.ini file in the same folder where eclipse existed. then change the line under -vm keyward to the new path of jre/bin folder to get the path go to programfiles -> java -> jre latest version -> bin folder copy the path and replace in line under -vm keyword.
This error message occurs when a class/java-project is unable to resolve correct JDK libraries. Say, in my primary Project A, I was getting this error. This Project A had a maven dependency for a project B. Project B pointed to JDK-11. Project A pointed to JDK-9
Correction I did : Made Project also point to JDK-11. It resolved the issue for me
For Gradle users, use eclipse plugin. I'm not using eclipse directly but jdtls on Neovim. This solves the issue for me.
build.gradle
plugins {
id 'java'
id 'eclipse'
}
Then run
gradle cleanEclipse eclipse

Android requires compiler compliance level 5.0 or 6.0. Found '1.7' instead. Please use Android Tools > Fix Project Properties

Did anybody have similar problem with this, I import android project and I get
errors like
[2011-10-03 17:20:09 - Screen] Android requires compiler compliance level 5.0 or 6.0. Found '1.7' instead. Please use Android Tools > Fix Project Properties.
[2011-10-03 17:21:55 - App] Android requires compiler compliance level 5.0 or 6.0. Found '1.7' instead. Please use Android Tools > Fix Project Properties.
[2011-10-03 17:21:59 - App] Android requires compiler compliance level 5.0 or 6.0. Found '1.7' instead. Please use Android Tools > Fix Project Properties.
I got errors to delete all #Override above functions. I have Windows 7 x64, jvm7 x64. Does anyone have clue what is wrong ?( I done Android Tools -> Fix Project Properties but didn;t help )
That isn't the problem, Jack. Android SDK isn't x64, but works ok with x64 jvm (and x64 eclipse IDE).
As helios said, you must set project compatibility to Java 5.0 or Java 6.0.
To do that, 2 options:
Right-click on your project and select "Android Tools -> Fix
Project Properties" (if this din't work, try second option)
Right-click on your project and select "Properties -> Java
Compiler", check "Enable project specific settings" and select
1.5 or 1.6 from "Compiler compliance settings" select box.
Go to the project folder and right click on it -> properties -> check off the read only box and click ok
Right-click on your project and select "Android Tools -> Fix Project Properties"
Right-click on your project and select "Properties -> Java Compiler", check "Enable project specific settings" and select 1.5 or 1.6 from "Compiler compliance settings" select box. (try all the levels one by one just in case)
Under Window -> Preferences -> Java -> Compiler, set Compiler compliance level to 1.6 or 1.5.
Hopefully it will settle the problem.
I would recommend using x86 version of jvm. When I first got my new laptop (x64), I wanted to go x64 all the way (jvm, jdk, jre, eclipse, etc..). But once I finished setting everything up I realized that the Android SDK wasn't x64, so I had issues. Go back to x86 jvm and you should be ok.
EDIT: 11/14/13
I've seen some recent activity and figured I would elaborate a little more.
I did not say it would not work with x64, I just recommended using x86.
Here is a good post on the advantages / disadvantages of x64 JDK. Benefits of 64bit Java platform
Thought process: To what end? Why am I trying to using 64 bit JDK? Just because I have a 64-bit OS? Do I need any of the features of 64-bit JDK? Are there any extra features in the 64-bit JDK?! Why won't this s*** play nice together!? F*** it I'm going 32-bit.
Doing Project -> Clean... fixed it for me.
My eclipse had stopped working so I cleaned workspace directory and after I run eclipse when I import the project I had this problem. Other solutions suggested here didn't work.
For most of the people still receiving the error after fixing project properties, you probably installed Java 7 SDK when setting up your environment, but it is not currently supported for Android development.
As the error message sais, you should have installed Java 5.0 or 6.0, but Java 7 was found.
If you fix project properties without first installing Java 5 or 6, you will see the same error again.
So first, ensure you have Java SDK 5 or 6 installed, or install it.
Check your environment variable (JAVA_HOME) is pointing to SDK 5/6.
And then:
Check that Eclipse is using SDK 5/6 by default (Window => Prefs. => Java => Compiler
Disable Project Specific Settings (Project Properties => Java Compiler)
Fix Project Properties
OR
Leave Eclipse using JDK 7 by default.
Enable Project Specific Settings (Project Properties => Java Compiler)
Select Compiler Compliance 1.5 or 1.6 (Project Properties => Java Compiler)
I agree with BMSAndroidDroid and Flo-Scheild-Bobby. I was doing a tutorial called DailyQuote and had used the Cordova library. I then changed my OS from Windows to Ubuntu and tried to import projects into Eclipse, (I'm using Eclipse Juno 64-bit, on Ubuntu 12.04 64-bit, Oracle JDK 7. I also installed the Ubuntu 32-bit libs- so no issues with 64 and 32bit), and got the same issue.
As suggested by Flo-Scheild-Bobby, open configure build path and add the jar(s) again that you added before. Then remove the old jar link(s) and thats it.
I fixed this problem employing the two procedures of :
In Eclipse->'Project' menu -> 'Java Compiler' -> set 'Compiler compliance level' = 1.6
check on 'Use default compliance settings'
Set 'Generated .class compatibility' = 1.6
Set 'Source compatibilty' = 1.6
Then go to 'Windows' menu --> 'Preferences' -->'Java' , expand 'Java' --> 'Compiler' -->Set 'Compiler compliance level' = 1.6
Hint: Source compatibility must be equal to or less than compliance level.
I would suggest that u check for the jar files are properly included in your projects. There are possibility that in absence of jar files, the project will not be compiled
As BMSAndroidDroid said, this problem may be caused by a wrong build path configuration.
If you included some libraries to your build path, then move the libraries, the build path will conserve the wrong references, will not found the libraries during compilation and you will get an error.
To fix it, right click on your project folder > build path > configure build path
Then take a look to the library tab, and remove the old libraries.
In my case a switch from openjdk7 to openjdk6 helped. Afterwards I changed the compliance level to 1.6 and all compiled fine.
i come across this problem cause my debug.keystore is expired, so i deleted the debug.keystore under .android folder, and the eclipse will regenerate a new debug.keystore, then i fixed th
Following worked for me
Enable project-specific settings and set the compliance level to 1.6
How can you do that?
In your Eclipse Package Explorer 3rd click on your project and select properties. Properties Window will open. Select Java Compiler on the left panel of the window. Now Enable project specific settings and set the Complier compliance level to 1.6. Select Apply and then OK.

Categories

Resources