Как это исправить?
blockquote>Эта ошибка означает, что JRE, который используется для выполнения вашего кода класса, не распознает используемую версию Java. Обычно, поскольку версия Java, которая сгенерировала ваш файл класса (т.е. скомпилировала его), является более новой.
Чтобы исправить это, вы можете либо
a) Скомпилировать ваши источники Java с тем же, или более старой версии компилятора Java, который будет использоваться для его запуска. т. е. установить соответствующий JDK.
b) Скомпилировать ваши источники Java с более новой версией компилятора Java, но в режиме совместимости. т.е. используйте параметр
-target
.c) Запустите скомпилированные классы в JRE, которая является той же самой или новой версией, что и JDK, используемый для компиляции классов.
Вы может проверить версии, которые вы используете в настоящий момент с помощью
javac -version
для компилятора, иjava -version
для среды выполнения.Должен ли я установить JDK и настроить свою переменную PATH на JDK вместо JRE?
blockquote>Для компиляции, конечно же, установите и настройте конкретный JDK, который вы хотите.
Для среды исполнения вы можете использовать ту, которая поставляется с JDK или автономный JRE, но независимо от того, убедитесь, что вы установили правильные версии и что вы настроили свой PATH таким образом, чтобы не было сюрпризов.
В чем разница между переменной PATH в JRE или JDK?
blockquote>Переменная среды PATH сообщает командной оболочке, где нужно искать введенную команду. Когда вы набираете
java
, интерпретатор командной оболочки будет просматривать все местоположения, указанные в переменнойPATH
слева направо, чтобы найти исполняемый файл исполняемого файлаjava
для запуска. Если у вас есть несколько версий Java, то есть у вас есть исполняемый файлjava
в нескольких местах, указанных в переменной PATH, то первый, который встречается при движении слева направо, будет выполняться.Команда компилятора
javac
и поставляется только с JDK. Команда runtime являетсяjava
и поставляется с JDK и находится в JRE.Вероятно, у вас установлена одна версия (51.0 = Java 7)
javac
, и у вас также есть ту же версиюjava
, но другая предыдущая версияjava
появляется раньше в PATH и поэтому вызывается вместо ожидаемого.
В VS2010, 2012, 2013 и 2015 годах вы можете добавить файл манифеста в свой проект. Щелкните правой кнопкой мыши файл project в Solution Explorer , выберите Add
, затем New item
. Там вы можете найти Application Manifest File
.
Имя файла - app.manifest.
Перейдите в папку obj в папке вашего приложения, затем отлаживайте. Там удалите файл манифеста и снова создайте его. Это сработало для меня.
Как указано ibram, добавьте манифест через explorer:
Это создает манифест по умолчанию. Теперь отредактируйте манифест.
<applicationRequestMinimum>
не подходит по умолчанию? Это то, что вы добавили по причине? Я использую VS2015
– Horizon
11 August 2016 в 08:52