У меня была такая же проблема, и я искал решение в Интернете, и ни одно из предложений не открылось, если дважды щелкнуть файл .jar
.
В моем случае причина в том, что на моем компьютере установлено несколько версий JDK и JRE. Поскольку я являюсь разработчиком программного обеспечения и работаю с несколькими различными версиями для разных клиентов, мне нужно использовать несколько JDK на моем ПК (Windows 10 Pro). Поэтому я не хочу изменять системные переменные (то есть JAVA_HOME
, JRE_HOME
или PATH
), вместо этого я использую командную строку для запуска Java в пользовательском процессе всякий раз, когда я хочу использовать другую версию.
При установке JDK регистрируется ассоциация файла .jar
с последней версией, которую мы установили на ПК. Если вы щелкнете правой кнопкой мыши по значку .jar и выберете свойства, он покажет, что файл открывается с «Java (TM) Platform SE Binary». Если мы посмотрим на ключ реестра: HKEY_CLASSES_ROOT\jarfile\shell\open\command
, он будет указывать на последнюю версию JDK.
Не рекомендуется (иногда раздражает) менять раздел реестра каждый раз, когда я хочу запустить сборку приложения из другой версии.
Так что в моей ситуации невозможно просто дважды щелкнуть файл .jar
, чтобы выполнить его. Но вместо этого я сам нашел решение проблемы.
Сценарий:
В ПК установлено несколько JDK (1.7, 1.8, 9.0, 10.0, 11.0 и 12.0), поэтому последний установленный пакет был 12.0.
Проблема
Хотите дважды щелкнуть исполняемый файл .jar
, разработанный с использованием JDK 1.8 и не работающий
Это мое решение для обхода проблемы:
- Создайте ярлык для
.jar
файла, который вы хотите открыть.
- Щелкните правой кнопкой мыши значок ярлыка и выберите «Свойства» -> вкладка «Ярлык»
Изменить текст в цели (например, "D:\Dev\JavaApp1.8.jar"
)
До
"C:\Program Files\Java\jdk1.8.0\bin\javaw.exe
" -jar
"D:\Dev\JavaApp1.8.jar
"
Затем нажмите ОК. Дважды щелкните ярлык.
Теперь должно открыться приложение.