Опитвам се да използвам Notepad++ като универсален инструмент за редактиране, стартиране, компилиране и т.н.
Имам инсталиран JRE и съм настроил променливата си за пътя към директорията .../bin
.
Когато стартирам моя "Hello world" в Notepad++, получавам следното съобщение:
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)
.........................................
Мисля, че проблемът тук е свързан с версиите; някои версии на Java може да са стари или твърде нови.
PATH
в JRE или JDK?Показаният номер на версията описва версията на JRE, с която е съвместим файлът на класа.
Посочените основни номера са:
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
(Източник: Уикипедия)
За да отстраните действителния проблем, трябва да опитате да стартирате кода на Java с по-нова версия на Java JRE или да зададете параметъра target на компилатора на Java, за да инструктирате компилатора да създаде код, съвместим с по-ранни версии на Java.
Например, за да генерирате класови файлове, съвместими с Java 1.4, използвайте следния команден ред:
javac -target 1.4 HelloWorld.java
При по-новите версии на компилатора на Java е възможно да получите предупреждение за това, че пътят на bootstrap класа не е зададен. Повече информация за тази грешка можете да намерите в публикация в блога Ново предупреждение на javac за задаване на по-стар източник без bootclasspath.
java.lang.UnsupportedClassVersionError
се случва поради по-висока версия на JDK по време на компилиране и по-ниска версия на JDK по време на изпълнение.
Не се притеснявайте, реших проблема.
Всъщност е просто - трябва да инсталирате ДВА JRE / JDK с една и съща версия.
JRE 6 -> JDK 6
JRE 7 -> JDK 7
И така нататък.