Signup/Sign In
Ask Question
Not satisfied by the Answer? Still looking for a better solution?

How to fix java.lang.UnsupportedClassVersionError: Unsupported major.minor version

I'm attempting to utilize Notepad++ as my across the board instrument to alter, run, compile, and so forth

I have JRE installed, and I have setup my path variable to the .../bin directory.

At the point when I run my "Hello world" in Notepad++, I get this message:

java.lang.UnsupportedClassVersionError: test_hello_world :
Unsupported major.minor version 51.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(Unknown Source)
.........................................


I think the issue here is about versions; a few versions of Java might be old or excessively new.

How would I fix it?

Would it be installed for me to set up the JDK, and arrange my way variable to the JDK rather than JRE?

What is the distinction between the PATH variable in JRE or JDK?
by

2 Answers

espadacoder11
java.lang.UnsupportedClassVersionError happens because of a higher JDK during compile time and lower JDK during runtime.
kshitijrana14
The version number shown describes the version of the JRE the class file is compatible with.
The reported major numbers are:

Java SE 17 = 61,
Java SE 16 = 60,
Java SE 15 = 59,
Java SE 14 = 58,
Java SE 13 = 57,
Java SE 12 = 56,
Java SE 11 = 55,
Java SE 10 = 54,
Java SE 9 = 53,
Java SE 8 = 52,
Java SE 7 = 51,
Java SE 6.0 = 50,
Java SE 5.0 = 49,
JDK 1.4 = 48,
JDK 1.3 = 47,
JDK 1.2 = 46,
JDK 1.1 = 45

(Source: Wikipedia)

To fix the actual problem you should try to either run the Java code with a newer version of Java JRE or specify the target parameter to the Java compiler to instruct the compiler to create code compatible with earlier Java versions.

For example, in order to generate class files compatible with Java 1.4, use the following command line:

javac -target 1.4 HelloWorld.java

With newer versions of the Java compiler you are likely to get a warning about the bootstrap class path not being set. More information about this error is available in a blog post New javac warning for setting an older source without bootclasspath.

Login / Signup to Answer the Question.