Terminal
javap -v MyClass | grep major
That will produce output like this...
Terminal
major version: 51
Even though I primarily code in Java, I never remember the class version names and their equivalent JDK versions. So instead of looking it up I added this handy function to my Bash ~/.profile file to tell me the JDK version for a .class file...
Bash ~/.profile function
jversion() {
case $(javap -v $1|grep major|awk '{print $3}') in
46)
echo 'Java 1.2'
;;
47)
echo 'Java 1.3'
;;
48)
echo 'Java 1.4'
;;
49)
echo 'Java 5'
;;
50)
echo 'Java 6'
;;
51)
echo 'Java 7'
;;
52)
echo 'Java 8'
;;
53)
echo 'Java 9'
;;
*)
echo 'Unrecognised Java version'
esac
}
Using it is simple, simply do this:
Terminal
jversion MyClass
The output is a little bit more friendly than what javap produces, for example:
Terminal
Java 8
-i