Ошибка JNI, пожалуйста, проверьте вашу установку (Запуск файла JAR) - PullRequest
0 голосов
/ 15 марта 2019

Это не дубликат!Поэтому я создал JAR-файл и с манифестом, указывающим основной класс.Но когда я пытаюсь запустить его с

java -jar app.jar

В моем CMD выводится сообщение: «Ошибка: произошла ошибка JNI, проверьтеустановка и попробуйте снова. Исключение в потоке "main" java.lang.UnsupportedClassVersionError: Еда была скомпилирована более поздней версией java runtime (55), эта версия java runtime распознает версии до 52 "

Странно то, что я могу компилировать и запускать программы Java и классы в CMD.Но я не могу запустить файлы JAR.

У меня есть jdk1.8.0_201 и jre1.8.0_201.Что я почти уверен, что это последний.По крайней мере, потому что, когда я открываю программу «Настройка Java» и перехожу на вкладку «Обновление» и нажимаю «Обновить сейчас», он говорит: «У вас уже установлена ​​последняя версия платформы Java в этой системе. Разве я не должен поддерживать версии jre и jdk равными?

Также я хотел бы получить некоторые разъяснения о числах этих jre и jdk. Сначала в моих переменных окружения все, что у меня есть, это jdk 1.8 и jre 1.8, как и выше, так как я могу сказать, что у меня естьболее свежая версия?

Итак, согласно этому сообщению, Как исправить ошибку java.lang.UnsupportedClassVersionError: Неподдерживаемая версия major.minor

, если у меня версия 52, котораяJava SE 8.0, почему при установке jdk написано 1.8.0_201, а не 8.0? Это тот же вопрос, почему Microsoft пропустила Microsoft 9 ...

И да, у меня есть Java 11 (55), но это даже не такв окружающих переменных.

И я искал java SE 9,10,11,12 и 13, и они даже не существуют. Я не могу найти этот JRE. Это просто так сбивает с толку.

Такжекогда я просто пытаюсьчтобы скомпилировать мою программу (которая имеет HashMap, но я уточнил типы в конце), она говорит:

Food.java uses unchecked or unsafe operations Note: Recompile with -Xlint:unchecked for details https://pastebin.com/Vw2UerDG

и я думаю, что проблема заключается в методе put (), но мне не имеет смысла, какая операция put небезопасна.Это просто не похоже ... Спасибо

...