Class has been compiled by a more recent version of the Java Environment
While running Selenium script, I am getting the following error message in the Eclipse console:
Class has been compiled by a more recent version of the Java Environment (class file version 53.0), this version of the Java Runtime only recognizes class file versions up to 52.0.
- Java Version:
8
- IDE:
Eclipse Oxygen
- Firefox Version:
46
Solution 1:
This is just a version mismatch. You have compiled your code using java version 9 and your current JRE is version 8. Try upgrading your JRE to 9.
49 = Java 5
50 = Java 6
51 = Java 7
52 = Java 8
53 = Java 9
54 = Java 10
55 = Java 11
56 = Java 12
57 = Java 13
58 = Java 14
Solution 2:
IDE: Eclipse Oxygen.3
To temporarily correct the problem do the following:
Project menu
> Properties
> Java Compiler
> Compiler compliance level
> 1.8
A permanent fix likely involves installing JDK 9.
FYI 1.8 is what Java 8 is called.
Side bar
I recently returned to Java after a foray into C# (a breath of fresh air) and installed Eclipse Oxygen onto a clean system that had never had Java installed on it before. This default everything with a brand new install of Eclipse Oxygen yet somehow or other Eclipse can't get its own parameters to match the jdk that's installed. This is the second project I created and the second time I ran into this headache. Time to go back to C#?
Related Question
has been compiled by a more recent version of the Java Runtime (class file version 53.0)
Solution 3:
You can try this way
javac --release 8 yourClass.java
Solution 4:
53
stands for java-9, so it means that whatever class you have has been compiled with javac-9
and you try to run it with jre-8
. Either re-compile that class with javac-8
or use the jre-9
Solution 5:
For temporary solution just right click on Project => Properties => Java compiler => over there please select compiler compliance level 1.8 => .class compatibility 1.8 => source compatibility 1.8.
Then your code will start to execute on version 1.8.